84 Часть I: Основы
20 часов работы бета-тестировщика для компании-
разработчика вовсе не бесплатны. Вам или другому сотруднику
компании приходится тратить на каждого из них от 4 до 8
часов, вербуя новых людей, давая им консультации и отвечая на
их вопросы. Кроме того, нужно писать для них инструкции и
разрабатывать вопросники.
Однако в определенных ситуациях бета-тестировщики работают с про-
дуктом гораздо более основательно. Вот какими могут быть их мотивации.
• Пользователю очень нужен ваш продукт, даже если он и не надежен,
а других подобных продуктов на рынке нет.
• Вы достаточно платите. Обычно в качестве платы за бета-тестиро-
вание пользователь получает или бесплатную копию продукта, или
значительную скидку. Если продукт дорогой, этого достаточно. Но
если речь идет о программе, предназначенной для доступа к важной
информации, и в этой программе происходит сбой, потеря данных
может обойтись пользователю гораздо дороже стоимости программ-
ного продукта.
• Вы даете пользователю выгодную гарантию. Например, вы обещае-
те, что в случае сбоя программы сотрудник вашей компании бес-
платно введет потерянные данные.
Здесь мы привели лишь краткий обзор процедуры бета-тестирования, а
подробное ее описание вы найдете в главе 13.
Тестирование целостности готового продукта
и тестирование распространяемых копий
С завершением тестирования последней бета-версии готового программ-
ного продукта возможные проблемы не заканчиваются. Ведь нужно еще
убедиться, что он в целости и сохранности попадет к клиенту. Нередко и
на этом этапе случаются всевозможные неприятности: например, компании
отсылают пользователям пустые или инфицированные диски.
Для тестирования распространяемых копий вы собираете все, что будет
отправлено пользователю или производителю, проверяете, все ли на мес-
те и в порядке, и делаете архивные копии. Только после этого продукт
отправляется по назначению.
Комплект дисков проверить проще всего: нужно просто выполнить их
двоичное сравнение с последней версией продукта. Не пренебрегайте этой
процедурой, даже если для создания дисков вы пользовались уже проверен-
Глава 3: Типы тестов ... 85
ной копией. Такое сравнение обойдется вам гораздо дешевле, чем отправ-
ка пользователям новой партии, если что-то будет не так.
Мы настоятельно рекомендуем включить в эту процедуру тестирования
еще и проверку на вирусы. Если программное обеспечение поставляется в
сжатом виде, не останавливайтесь на тестировании сжатых файлов: устано-
вите программу, запустите ее, перезапустите компьютер и убедитесь, что он
не заражен. Имейте в виду, что за заражение вирусами пользователь может
подать на вас в суд.
Тестирование целостности программного продукта — работа более об-
стоятельная. Это ваш последний шанс что-либо изменить перед тем, как
выпустить свое детище в жизнь. Тестировщик старается спрогнозировать
все жалобы и критические замечания, которые могут появиться в прессе и
поступить от пользователей в ближайшие несколько месяцев. Этим может
заниматься ведущий специалист, который не участвовал в данной разработ-
ке, или даже сотрудник независимого агентства. В его задачи не входит
поиск ошибок. Напротив, он предполагает, что и системное и функцио-
нальное тестирование проведены самым тщательным образом. Специалист
внимательно сравнивает программу с пользовательской документацией и
документами, в которых описаны требования к продукту. Кроме того, он
может выполнить сравнение с конкурирующими продуктами.
В рамках тестирования целостности продукта выполняется и анализ
маркетинговых материалов — ведь возможности программы обязательно
должны соответствовать рекламе. Потому и рекламная копия, и все печат-
ные и электронные рекламные материалы перед публикацией должны
подвергнуться самой строгой проверке.
Тестирование целостности программного продукта лучше поручить не
команде, а одному человеку. Для однопользовательской программы сред-
ней сложности на это уйдет около двух недель.
Окончательная приемка и сертификация
Если ваша компания разрабатывает программное обеспечение по кон-
тракту, для его приемки клиенты должны будут провести собственные
тесты. Если продукт невелик, тестирование может быть неформальным.
Однако для большинства проектов процедура приемочного тестирования
заранее согласовывается и фиксируется в контрактных документах. Поэто-
му, прежде чем передать программу клиенту, нужно убедиться, что она
абсолютно безупречно проходит серию приемочных тестов. Обычно при-
емочное тестирование занимает не более одного дня и не является особен-
но тщательным. Как подготовить и провести формальное приемочное
тестирование, подробно рассказывает Бейзер (Beizer, 1984). Хорошим учеб-
ником по разработке приемочных тестов является книга Перри (Perry,
1986). Особенно полезной эта книга может быть для тех, кто разрабатывает
приемочные тесты совместно со своим клиентом.