Составители:
Рубрика:
65
подразумевают определенную стратегию при тестировании и создании
классов/модулей), но нисходящее проектирование – это совершенно иной
и независимый процесс. Программа, спроектированная нисходящим ме-
тодом, может тестироваться и нисходящим, и восходящим методами.
Во-вторых, восходящая разработка или тестирование часто отожде-
ствляется с монолитным тестированием. Это недоразумение возникает
из-за того, что начало
восходящего тестирования идентично монолитно-
му при тестировании нижних или терминальных классов/модулей. Рас-
смотрим различие между нисходящей и восходящей стратегиями.
3.4.1. Нисходящее тестирование
Нисходящее тестирование начинается с верхнего, головного класса
(или модуля) программы. Строгой, корректной процедуры подключения
очередного последовательно тестируемого класса не существует. Единст-
венное правило, которым следует руководствоваться при
выборе очеред-
ного класса, состоит в том, что им должен быть один из классов, методы
которого вызываются классом, предварительно прошедшим тестирование.
Для иллюстрации этой стратегии рассмотрим рис. 12. Изображенная
на нем программа состоит из двенадцати классов А-L. Допустим, что класс J
содержит операции чтения из внешней памяти, а класс I – операции записи.
A
B C D
F
H
E G
I
J
K L
Рис. 12. Пример программы, состоящей из двенадцати классов
Первый шаг – тестирование класса А. Для его выполнения необхо-
димо написать заглушки, замещающие классы В, С и D. К сожалению,
часто неверно понимают функции, выполняемые заглушками. Так, порой
можно услышать, что «заглушка» должна только выполнять запись со-
общения, устанавливающего: «класс подключен» или «достаточно, чтобы
заглушка существовала, не выполняя никакой работы вообще». В
боль-
шинстве случаев эти утверждения ошибочны. Когда класс А вызывает
метод класса В, А предполагает, что В выполняет некую работу, т. е.
класс А получает результаты работы метода класса В (например, в форме
значений выходных переменных). Когда же метод класса В просто воз-
подразумевают определенную стратегию при тестировании и создании классов/модулей), но нисходящее проектирование – это совершенно иной и независимый процесс. Программа, спроектированная нисходящим ме- тодом, может тестироваться и нисходящим, и восходящим методами. Во-вторых, восходящая разработка или тестирование часто отожде- ствляется с монолитным тестированием. Это недоразумение возникает из-за того, что начало восходящего тестирования идентично монолитно- му при тестировании нижних или терминальных классов/модулей. Рас- смотрим различие между нисходящей и восходящей стратегиями. 3.4.1. Нисходящее тестирование Нисходящее тестирование начинается с верхнего, головного класса (или модуля) программы. Строгой, корректной процедуры подключения очередного последовательно тестируемого класса не существует. Единст- венное правило, которым следует руководствоваться при выборе очеред- ного класса, состоит в том, что им должен быть один из классов, методы которого вызываются классом, предварительно прошедшим тестирование. Для иллюстрации этой стратегии рассмотрим рис. 12. Изображенная на нем программа состоит из двенадцати классов А-L. Допустим, что класс J содержит операции чтения из внешней памяти, а класс I – операции записи. A B C D E F G H I J K L Рис. 12. Пример программы, состоящей из двенадцати классов Первый шаг – тестирование класса А. Для его выполнения необхо- димо написать заглушки, замещающие классы В, С и D. К сожалению, часто неверно понимают функции, выполняемые заглушками. Так, порой можно услышать, что «заглушка» должна только выполнять запись со- общения, устанавливающего: «класс подключен» или «достаточно, чтобы заглушка существовала, не выполняя никакой работы вообще». В боль- шинстве случаев эти утверждения ошибочны. Когда класс А вызывает метод класса В, А предполагает, что В выполняет некую работу, т. е. класс А получает результаты работы метода класса В (например, в форме значений выходных переменных). Когда же метод класса В просто воз- 65
Страницы
- « первая
- ‹ предыдущая
- …
- 61
- 62
- 63
- 64
- 65
- …
- следующая ›
- последняя »