Методы тестирования программного обеспечения. Степанченко И.В. - 70 стр.

UptoLike

Составители: 

72
Таблица 2
Сравнение нисходящего и восходящего тестирования
Преимущества Недостатки
Нисходящее тестирование
1. Имеет преимущества, если ошиб-
ки главным образом в верхней
части программы.
2. Представление теста облегчается
после подключения функции
ввода-вывода.
3. Раннее формирование структуры
программы позволяет провести ее
демонстрацию пользователю и
служит моральным стимулом.
1. Необходимо разрабатывать заглушки.
2. Заглушки часто оказываются слож-
нее, чем кажется вначале.
3. До применения
функций ввода-
вывода может быть сложно представ-
лять тестовые данные в заглушки.
4. Может оказаться трудным или невоз-
можным создать тестовые условия.
5. Сложнее оценка результатов тести-
рования.
6. Допускается возможность формиро-
вания представления о совмещении
тестирования и проектирования.
7. Стимулируется незавершение тести-
рования некоторых классов/модулей.
Восходящее тестирование
1. Имеет преимущества, если ошиб-
ки главным образом в клас-
се/модуле нижнего уровня.
2. Легче создавать тестовые условия.
3. Проще оценка результатов.
1. Необходимо разрабатывать драйверы.
2. Программа как единое целое не су-
ществует до тех пор, пока не добав-
лен последний класс/модуль.
3.5. Проектирование и исполнение теста
Проектирование теста, как можно понять из вышеизложенного мате-
риала, может быть достаточно трудоемким процессом. Оно включает в
себя следующие этапы:
1) задаться целью теста;
2) написать входные значения;
3) написать предполагаемые выходные значения;
4) выполнить тест и зафиксировать результат;
5) проанализировать результат.
От правильного подхода к
каждому этапу зависит качество тестиро-
вания в целом. О проблеме неверной поставки цели говорилось в первой
главе. Необходимость второго этапа не вызывает сомнений.
Третий этап позволит избежать неоднозначности на пятом этапе.
Очень часто, при отсутствии описания, что должно получиться, пытают-
ся «подогнать» логику рассуждений в анализе результатов. Кроме того,
очень часто
этот пункт требует формирования либо независимой оценки
(критерия), либо альтернативного просчета по алгоритму. В первом слу-
чае очень легко контролировать общий результат, во второмболее де-
                                                       Таблица 2
        Сравнение нисходящего и восходящего тестирования
             Преимущества                              Недостатки
                            Нисходящее тестирование
   1.   Имеет преимущества, если ошиб- 1.  Необходимо разрабатывать заглушки.
        ки главным образом в верхней 2.    Заглушки часто оказываются слож-
        части программы.                   нее, чем кажется вначале.
   2.   Представление теста облегчается 3. До применения функций ввода-
        после подключения функции          вывода может быть сложно представ-
        ввода-вывода.                      лять тестовые данные в заглушки.
   3.   Раннее формирование структуры 4.   Может оказаться трудным или невоз-
        программы позволяет провести ее    можным создать тестовые условия.
        демонстрацию пользователю и 5.     Сложнее оценка результатов тести-
        служит моральным стимулом.         рования.
                                        6. Допускается возможность формиро-
                                           вания представления о совмещении
                                           тестирования и проектирования.
                                        7. Стимулируется незавершение тести-
                                           рования некоторых классов/модулей.
                               Восходящее тестирование
   1.   Имеет преимущества, если ошиб- 1.     Необходимо разрабатывать драйверы.
        ки главным образом в клас- 2.         Программа как единое целое не су-
        се/модуле нижнего уровня.             ществует до тех пор, пока не добав-
   2.   Легче создавать тестовые условия.     лен последний класс/модуль.
   3.   Проще оценка результатов.


                3.5. Проектирование и исполнение теста
     Проектирование теста, как можно понять из вышеизложенного мате-
риала, может быть достаточно трудоемким процессом. Оно включает в
себя следующие этапы:
1) задаться целью теста;
2) написать входные значения;
3) написать предполагаемые выходные значения;
4) выполнить тест и зафиксировать результат;
5) проанализировать результат.
     От правильного подхода к каждому этапу зависит качество тестиро-
вания в целом. О проблеме неверной поставки цели говорилось в первой
главе. Необходимость второго этапа не вызывает сомнений.
     Третий этап позволит избежать неоднозначности на пятом этапе.
Очень часто, при отсутствии описания, что должно получиться, пытают-
ся «подогнать» логику рассуждений в анализе результатов. Кроме того,
очень часто этот пункт требует формирования либо независимой оценки
(критерия), либо альтернативного просчета по алгоритму. В первом слу-
чае очень легко контролировать общий результат, во втором – более де-

                                        72