Составители:
Рубрика:
11
дителями проектов при оценке результатов тестирования. Некоторые ру-
ководители программных проектов называют тестовый прогон «неудач-
ным» если обнаружена ошибка, и, наоборот, удачным, если он прошел
без ошибок. Чаще всего это является следствием ошибочного понимания
термина «тестирование», так как, по существу, слово «удачный» означает
«результативный», а слово «неудачный» – «нежелательный», «нерезуль-
тативный». Но если тест не обнаружил ошибки, его выполнение связано с
потерей времени и денег, и термин «удачный» никак не может быть при-
менен к нему. Естественно, заранее неизвестно, будет ли тест удачным
или неудачным, но построение удачных тестов – отдельная тема.
Тестовый прогон, приведший к обнаружению ошибки, нельзя назвать
неудачным хотя
бы потому, что, как отмечалось выше, это целесообразное
вложение капитала. Отсюда следует, что в слова «удачный» и «неудач-
ный» необходимо вкладывать смысл, обратный общепринятому. Поэтому
в дальнейшем будем называть тестовый прогон удачным, если в процессе
его выполнения обнаружена ошибка, и неудачным, если получен коррект-
ный результат.
Проведем аналогию с посещением
больным врача. Если рекомендо-
ванное врачом лабораторное исследование не обнаружило причины бо-
лезни, не назовем же мы такое исследование удачным – оно неудачно:
ведь счет пациента сократился на 500 рублей, а он все так же болен. Если
же исследование показало, что у больного язва желудка, то оно является
удачным, поскольку врач может прописать
необходимый курс лечения.
Следовательно, медики используют эти термины в нужном нам смысле.
(Аналогия здесь, конечно, заключается в том, что программа, которую
предстоит тестировать, подобна больному пациенту.)
Определения типа «тестирование представляет собой процесс де-
монстрации отсутствия ошибок» (например, в [5] и [6]) порождают еще
одну проблему: они ставят цель, которая не может быть
достигнута ни
для одной программы, даже весьма тривиальной. Результаты психологи-
ческих исследований показывают, что если перед человеком ставится не-
выполнимая задача, то он работает хуже. Например, если предложить
кому-то решить кроссворд в воскресном номере «Нью-Йорк Таймс» за 15
минут, то через 10 минут не будет достигнут значительный успех; ведь
понятно,
что это невыполнимая задача. Если же на решение отводится
четыре часа, то через 10 минут результат окажется лучше [1]. Иными
словами, определение тестирования как процесса обнаружения ошибок
переводит его в разряд решаемых задач и таким образом преодолевается
психологическая трудность.
Другая проблема возникает в том случае, когда для тестирования ис-
пользуется следующее определение: «Тестирование
– это процесс, позво-
дителями проектов при оценке результатов тестирования. Некоторые ру- ководители программных проектов называют тестовый прогон «неудач- ным» если обнаружена ошибка, и, наоборот, удачным, если он прошел без ошибок. Чаще всего это является следствием ошибочного понимания термина «тестирование», так как, по существу, слово «удачный» означает «результативный», а слово «неудачный» – «нежелательный», «нерезуль- тативный». Но если тест не обнаружил ошибки, его выполнение связано с потерей времени и денег, и термин «удачный» никак не может быть при- менен к нему. Естественно, заранее неизвестно, будет ли тест удачным или неудачным, но построение удачных тестов – отдельная тема. Тестовый прогон, приведший к обнаружению ошибки, нельзя назвать неудачным хотя бы потому, что, как отмечалось выше, это целесообразное вложение капитала. Отсюда следует, что в слова «удачный» и «неудач- ный» необходимо вкладывать смысл, обратный общепринятому. Поэтому в дальнейшем будем называть тестовый прогон удачным, если в процессе его выполнения обнаружена ошибка, и неудачным, если получен коррект- ный результат. Проведем аналогию с посещением больным врача. Если рекомендо- ванное врачом лабораторное исследование не обнаружило причины бо- лезни, не назовем же мы такое исследование удачным – оно неудачно: ведь счет пациента сократился на 500 рублей, а он все так же болен. Если же исследование показало, что у больного язва желудка, то оно является удачным, поскольку врач может прописать необходимый курс лечения. Следовательно, медики используют эти термины в нужном нам смысле. (Аналогия здесь, конечно, заключается в том, что программа, которую предстоит тестировать, подобна больному пациенту.) Определения типа «тестирование представляет собой процесс де- монстрации отсутствия ошибок» (например, в [5] и [6]) порождают еще одну проблему: они ставят цель, которая не может быть достигнута ни для одной программы, даже весьма тривиальной. Результаты психологи- ческих исследований показывают, что если перед человеком ставится не- выполнимая задача, то он работает хуже. Например, если предложить кому-то решить кроссворд в воскресном номере «Нью-Йорк Таймс» за 15 минут, то через 10 минут не будет достигнут значительный успех; ведь понятно, что это невыполнимая задача. Если же на решение отводится четыре часа, то через 10 минут результат окажется лучше [1]. Иными словами, определение тестирования как процесса обнаружения ошибок переводит его в разряд решаемых задач и таким образом преодолевается психологическая трудность. Другая проблема возникает в том случае, когда для тестирования ис- пользуется следующее определение: «Тестирование – это процесс, позво- 11
Страницы
- « первая
- ‹ предыдущая
- …
- 7
- 8
- 9
- 10
- 11
- …
- следующая ›
- последняя »