Составители:
Рубрика:
67
щающих классы нижнего уровня; например, класс может получать дан-
ные от нескольких вызываемых им методов других классов.
После завершения тестирования класса А одна из заглушек заменяется
реальным классом и добавляются заглушки, необходимые уже этому клас-
су. Например, на рис. 13 представлена следующая версия программы.
A
B
Заглушка
C
Заглушка
D
Заглушка
F
Заглушка
E
Рис. 13. Второй шаг при нисходящем тестировании
После тестирования верхнего (головного) класса тестирование вы-
полняется в различных последовательностях. Так, если последовательно
тестируются все классы, то возможны следующие варианты:
A B C D E F G H I J K L
A B E F J C G K D H L I
A D H I K L C G B F J E
A B F J D I E C G K H L
При параллельном выполнении тестирования могут встречаться
иные последовательности. Например, после тестирования класса А одним
программистом может тестироваться последовательность А–В, другим –
А–С, третьим – А–D. В принципе нет
такой последовательности, которой
бы отдавалось предпочтение, но рекомендуется придерживаться двух ос-
новных правил:
1. Если в программе есть критические в каком-либо смысле части (воз-
можно, класс G), то целесообразно выбирать последовательность, ко-
торая включала бы эти части как можно раньше. Критическими могут
быть сложный класс, класс с новым алгоритмом или класс
со значитель-
ным числом предполагаемых ошибок (класс, склонный к ошибкам).
2. Классы, включающие операции ввода-вывода, также необходимо
подключать в последовательность тестирования как можно раньше.
Целесообразность первого правила очевидна, второе же следует об-
судить дополнительно. Напомним, что при проектировании заглушек
возникает проблема, заключающаяся в том, что одни из них должны
со-
держать тесты, а другие – организовывать выдачу результатов на печать
или на дисплей. Если к программе подключается реальный класс, содер-
жащий методы ввода, то представление тестов значительно упрощается.
Форма их представления становится идентичной той, которая использу-
щающих классы нижнего уровня; например, класс может получать дан- ные от нескольких вызываемых им методов других классов. После завершения тестирования класса А одна из заглушек заменяется реальным классом и добавляются заглушки, необходимые уже этому клас- су. Например, на рис. 13 представлена следующая версия программы. A B Заглушка Заглушка C D Заглушка Заглушка E F Рис. 13. Второй шаг при нисходящем тестировании После тестирования верхнего (головного) класса тестирование вы- полняется в различных последовательностях. Так, если последовательно тестируются все классы, то возможны следующие варианты: ABCDEFGHIJKL ABEFJCGKDHLI ADHIKLCGBFJE ABFJDIECGKHL При параллельном выполнении тестирования могут встречаться иные последовательности. Например, после тестирования класса А одним программистом может тестироваться последовательность А–В, другим – А–С, третьим – А–D. В принципе нет такой последовательности, которой бы отдавалось предпочтение, но рекомендуется придерживаться двух ос- новных правил: 1. Если в программе есть критические в каком-либо смысле части (воз- можно, класс G), то целесообразно выбирать последовательность, ко- торая включала бы эти части как можно раньше. Критическими могут быть сложный класс, класс с новым алгоритмом или класс со значитель- ным числом предполагаемых ошибок (класс, склонный к ошибкам). 2. Классы, включающие операции ввода-вывода, также необходимо подключать в последовательность тестирования как можно раньше. Целесообразность первого правила очевидна, второе же следует об- судить дополнительно. Напомним, что при проектировании заглушек возникает проблема, заключающаяся в том, что одни из них должны со- держать тесты, а другие – организовывать выдачу результатов на печать или на дисплей. Если к программе подключается реальный класс, содер- жащий методы ввода, то представление тестов значительно упрощается. Форма их представления становится идентичной той, которая использу- 67
Страницы
- « первая
- ‹ предыдущая
- …
- 63
- 64
- 65
- 66
- 67
- …
- следующая ›
- последняя »