Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тестирование программного обеспечения. Фундамен...docx
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
936 Кб
Скачать
☆

Глава 12: Планирование и документация 311

Если программа читает данные с диска, выясните у руководителя про­екта, какова структура соответствующих файлов. Включите в список и те переменные, значения которых вводятся из файлов. По мере углубления і естирования стоит подумать о написании собственной тестовой програм- чы, непосредственно читающей файлы данных и проверяющей коррект­ность их содержимого. Формат файлов данных нередко меняется в ходе разработки, причем руководитель проекта вполне может забыть вас об этом предупредить, а может и сам быть не в курсе этих изменений. Подобные емучай — прекрасная возможность найти новые ошибки.

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

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

• В списках ничего не сказано о том, где искать перечисленные в них переменные (в каком диалоговом окне или отчете). Эта информация вносится в отдельные таблицы, такие как на рисунках 12.11—12.13.

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

• В них не отражены взаимосвязи между входными и выходными значениями. (Например, в поле Проблема сводного отчета выводят­ся данные из одноименного поля исходного отчета о проблеме. Разумеется, не всегда выходная переменная имеет то же имя, что и входная, однако выходные данные всегда так или иначе формируют­ся на основе входных, и эти алгоритмы должны быть вам известны.)

Нередко выходная переменная является просто копией одной из входных, однако их связи могут быть и гораздо более сложными. Рассмотрим систему, выписывающие счета за сделанные по почте заказы. Ее входными документами могут быть заказы, а входными переменными — наименования и цены заказываемых товаров. Вы­ставляемый заказчику счет содержит набор выходных переменных. Одна из них — это общая стоимость покупки, вычисленная на ос­нове цен отдельных элементов. Вторая — это сумма налога, которая, хотя и не отражает прямо значения входных переменных, все же вы­числяется на их основе. Третьей переменной может быть итоговый баланс, включающий общую стоимость покупки с налогом и, воз­можно, задолженность после предыдущих покупок. Заметьте, что за­долженность извлекается из файла данных, а не из текущего заказа клиента.

312 Часть II: Приемы и технологии тестирования

Взаимосвязи между входными и выходными переменными лучше всего описываются в форме таблицы ввода/вывода, примеры кото­рой приведены на рисунках 12.2 и 12.3.

Несмотря на то что в базовом списке переменных отсутствуют подроб­ные сведения о каждой из них, этот список исключительно полезен. Преж­де всего, он является основой построения ряда более подробных таблиц. Кроме того, как минимум на первых трех циклах тестирования у вас про­сто не будет времени на сбор всей этой детализирующей информации. Единственным контрольным средством будут списки переменных ввода/ вывода. Тесты для каждой из них придумываются на ходу, а допустимые значения определяются интуитивным и пробным путем. Разумеется, эти тесты не будут такими обстоятельными и элегантными, как те, которые вы затем включите в тщательно продуманные планы, однако для начала они вполне подойдут.

Следует добавить, что на начальных этапах тестирования у вас не бу­дет ни времени, ни достаточного знания программы для того, чтобы соста­вить абсолютно полный список переменных. Рассматривайте то, что получится, лишь как первую версию. В дальнейшем наверняка будут обна­руживаться новые диалоговые окна, новые отчеты, новые файлы данных, а также измененные версии тех диалоговых окон, отчетов и файлов, кото­рые вы уже включили в свои списки.

Список возможностей и функций

Прежде всего составьте список тех функций программы, которые оче­видны для ее пользователя. Включите в него все команды меню, парамет­ры командной строки, всевозможные кнопки и опции и т.п. — все значительные возможности, имеющиеся у программного продукта. Это будет список функций самого верхнего уровня.

Позднее вам предстоит составить список подфункций и подподфунк- ций. В конечном счете получится подробный и строго структурированный перечень всех возможностей продукта. (Мы рекомендуем пользоваться для его создания специальным процессором иерархических списков или пла­нов.)

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

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