Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sit_teoriya_teoriya.doc
Скачиваний:
0
Добавлен:
20.02.2020
Размер:
1.84 Mб
Скачать

64. Тестування програм.

Что такое тестирование?

Тестирование - это любая деятельность, направленная на обнаружение ошибок в программном продукте. Тестирование проводится для того, чтобы найти ошибки в программе и тем самым повысить ее надежность, а следовательно, ценность. Если мы тестируем программу, то нам нужно окупить затраты на тестирование, каким-либо образом повысив стоимость программы.

Это можно сделать только повысив надежность программы, ради чего тестирование и проводится. Повысить надежность можно только исправлением ошибок, внесенных в процессе разработки. После тестирования нельзя гарантировать отсутствие ошибок, можно лишь говорить о некотором уровне уверенности в правильности работы системы.

Каждую ошибку следует внимательно изучить, чтобы понять, почему она возникла, что должно было быть сделано, чтобы ее предотвратить или обнаружить раньше. Удачным считается тест, который обнаружил ошибку. Если ни одна ошибка не была обнаружена, то тест считается неудачным.

Удачный и неудачный тест

Итак, при тестирование программы мы должны исходить из предположения, что ошибки в системе есть, и скорее всего, многие из них останутся и после тестирования, а наша задача - найти как можно больше ошибок.

В этом смысле меняются понятия удачного и неудачного теста. Если мы запустили тест и получили правильный результат - это неудачный тест, ведь мы не нашли ошибку! А вот если продукт проработал неправильно или вообще 'вылетел' , то мы должны радоваться, поскольку напали на след ошибки. Еще раз привлекаю ваше внимание к факту: при тестировании удачным считается тот тест, при котором выявлена ошибка и неудачным, при котором выявление ошибки не произошло.

Три этапа тестирования

Основным эталоном в этом случае будет проектная документация. При отсутствии такой документации, я считаю, что в принципе невозможно протестировать программу, поскольку взгляд на объем и качество выполняемых функций не совпадает не только у разных людей, но и может различаться у одного человека в разные промежутки времени.

Первый этап тестирования можно прекращать, когда есть уверенность, что большая часть синтаксических ошибок и аварийный остановов устранена. Остальные постепенно будут устраняться в процессе других этапов тестирования.

Второй этап тестирования можно прекращать, когда большая часть функциональности проверена и работает в соответствии с проектной документацией. Остальные несоответствия будут устраняться в процессе написания сопроводительной документации.

И наконец, третий этап тестирования можно прекращать, когда основные расчетные тесты дают правильные результаты.

О бета-тестерах Microsoft

Альфа-тестирование

Если бы строители строили здания так же, как программисты пишут программы, первый залетевший дятел разрушил бы цивилизацию.

В связи с тем, что Microsoft объявил о начале бета-тестирования Internet Explorer 6.0, в программистском мире начался очередной легкий ажиотаж.

Как известно, перед тем, как программный продукт появится на рынке, он проходит две фазы тестирования. Первая фаза, называемая альфа-тестом, - это внутреннее тестирование продукта на правильность и стабильность функционирования. Программа, прошедшая это тестирование, называется бета-продуктом и считается достаточно отлаженной для того, чтобы можно было попытаться использовать ее в реальных ситуациях. Здесь начинается вторая фаза (бета-тестирование), для которой и привлекаются бета-тестеры, т. е. люди, согласные пользоваться еще не завершенным продуктом и сообщать разработчику результаты. Бета-тестер должен быть согласен на работу с программой, заведомо содержащей ошибки и не имеющей технической поддержки.

Публичное и приватное тестирование

Существует два способа бета-тестирования: публичный и приватный. Публичное тестирование означает, что любой желающий может получить данный продукт (либо бесплатно, либо по цене дисков и доставки). Приватный способ тестирования означает, что проверку продукта производит ограниченный круг тестеров, который выразили согласие активно работать с продуктом и оперативно сообщать обо всех выявленных дефектах. Часто используются оба способа: сначала программа проходит приватное тестирование, а затем, когда все крупные проколы уже выявлены, начинается ее публичное тестирование, чтобы собрать отзывы широкого круга пользователей.

Большинство компаний-разработчиков требуют, чтобы приватный бета-тестер подписал Соглашение о неразглашении (NDA, Non-Disclosure Agreement). Тем самым он обязуется не разглашать подробности о тестируемом продукте и не передавать его копии третьим лицам. Подобные соглашения подписываются в целях сохранения коммерческой тайны и во избежание недобросовестной конкуренции.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]