ВУЗ:
Составители:
Рубрика:
119
от них могут быть разными. Поэтому задачей разработчика является создать
такую программу и так провести ее тестирование, чтобы:
–
количество невыявленных ошибок было не очень велико;
– последствия от невыявленных ошибок были бы по возможности мини-
мальными;
–
на большую часть оставшихся ошибок программа реагировала сама.
Именно с точки зрения этих показателей, а не декларацией о полном от-
сутствии ошибок, отличается хорошая (надежная) программа от плохой (не-
надежной).
Следует различать процедуры отладки и тестирования.
Отладка - это процедура устранения явных синтаксических ошибок и
ошибок кодирования (записи) исходного текста программы. Целью
отладки
является отсутствие таких ошибок в исходном тексте. Поскольку достижение
этой цели легко проверяется (транслятор перестает отвергать исходный
текст, как ошибочный), то процедура отладки является более или менее оп-
ределенной, причем в существенной мере ее выполнение поддерживается
средствами транслятора, справочными системами систем программирования
и т.п.
Другими словами, если компьютер
перестает отвергать программу, то она
считается успешно отлаженной. Однако, из этого нельзя делать вывод, что во
всех мыслимых ситуациях и при всех возможных комбинациях входных дан-
ных программа будет работать правильно.
Тестирование - это более глубокое испытание программы, цель которо-
го– выявление максимально возможного числа ошибок. Таким образом, имея
ввиду основной постулат
, можно утверждать, что результатом тестирования
является наличие выявленных (обнаруженных) ошибок, а не демонстрация
правильности работы программы в каких-то частных случаях. Если выявлен-
ных ошибок нет, значит тестирование было недостаточным. Ввиду невоз-
можности выявления абсолютно всех ошибок для оценки эффективности тес-
тирования нужны более тонкие критерии. Однако, общих критериев такого
рода нет, в этом и состоит одна из сложностей этапа тестирования.
Общим приемом тестирования является в принципе весьма простая про-
цедура: задаются некоторые наборы данных (и соответствующие им пара-
метры окружения), а затем с помощью прогонов программы получаются ре-
зультаты, которые сравниваются с "правильными результатами". Вся про-
блема состоит в том
, что
–
для исчерпывающего тестирования сколь-нибудь сложных программ
требуется астрономическое число тестовых прогонов;
–
для получения "правильных результатов" часто нет других эффективных
способов, кроме использования самой тестируемой программы, что по-
рождает порочный круг.
Страницы
- « первая
- ‹ предыдущая
- …
- 117
- 118
- 119
- 120
- 121
- …
- следующая ›
- последняя »