Cтраница 1
Планирование тестирования включает ряд предварительных классификаций. [1]
Для планирования тестирования необходимо все множество маршрутов упорядочить по некоторому показателю и подготавливать его в соответствии с проведенным упорядочением. Полнота проверок должна учитывать весовой показатель, использованный для упорядочения, и для маршрутов, расположенных в конце упорядоченной последовательности, может допускаться неполное тестирование. Весовой показатель важности маршрута для функционирования всего КП должен учитывать сложность маршрута и тестов для его проверки, количество операторов, условных переходов и циклов в маршруте, частость исполнения при рабочем функционировании КП, сложность получения соответствующих эталонных данных и другие факторы. [2]
Проведено планирование тестирования программы. Планирование тестирования осуществляется на - основе - информации, структурных характеристик, а также числовых данных, характеризующих структурную сложность программы. Структурные и числовые характеристики позволяют выбрать критерии полноты проверки программы, определить план проведения тестирования и подготовить соответствующие тесты для исполнения программы. При создании - плана проведения тестирования необходимо, - чтобы вся информация, характеризующая процесс исполнения программы, позволяла бы получить полную картину взаимодействия различных частей программы. [3]
При планировании тестирования, в принципе, возможен подход с критерием проверки абсолютно всех маршрутов исполнения программы при всех значениях исходных переменных. Такой подход практически реализуем только для структурно очень простых программ небольшого объема при малых диапазонах изменения исходных данных. Значительные трудности встречаются при его применении для реальных программ объемом более 500 операторов, и его невозможно использовать для КП объемом в десятки тысяч команд. Поэтому для планирования структурной проверки программ применяются менее жесткие критерии, которые не гарантируют ее полной проверки, однако позволяют планировать тестирование для эффективного выполнения необходимого минимума проверок. [4]
При планировании тестирования межмодульных связей используют листы описания данных между модулями и планируют тест, проверяющий правильность передачи данных от одного модуля к другому. Результат этого этапа также отражается таблицей. [5]
Средства подготовки данных для планирования тестирования обеспечивают выделение типовых структур в модуле ( циклов, альтернатив, маршрутов исполнения) и их упорядочение по некоторым параметрам. Выделение маршрутов исполнения программы и условий их формирования позволяет определить границы областей изменения переменных, влияющие на формирование тестовых наборов и их объем. [6]
Применение вышеизложенных спецификаций облегчает процесс планирования тестирования, делает его более типовым, стандартным, подчиненным определенной схеме, определяет тип данных, которые необходимо варьировать при испытаниях модуля. А использование документации определяет диапазон изменения этих данных, а также, какие конкретные значения необходимо взять в соответствии с требуемым качеством тестирования и ограничением на стоимостные и временные ресурсы. [7]
Простейший ( первый) критерий для планирования тестирования программ состоит в выборе минимального множества маршрутов программы, обеспечивающих исполнение и проверку каждого оператора в программе хотя бы один раз. Граф программы должен быть покрыт минимальным набором путей, проходящих через каждый оператор. Повторная проверка операторов не оценивается и считается избыточной. При этом в процессе тестирования гарантируется выполнение всех передач управления между участками программы и каждого оператора не менее одного раза. Количество исходных тестов и соответствующих им маршрутов зависит от стратегии выбора последовательностей маршрутов. Созданы алгоритмы, позволяющие минимизировать покрытие маршрутами графов при таком критерии анализа. Однако минимальные тесты по этому критерию не обеспечивают проверку исполнения каждого оператора при различных - сочетаниях предшествующих условий и последовательностей операторов, образующих весь набор маршрутов, проходящих через данное ветвление передачи управления. [8]
При каждом безошибочном исполнении отлаживаемой программы с выбранным тестом автоматически отмечаются исполненные точки программы на маршрутах, которые выдаются разработчику при планировании тестирования. Отметка проверяющихся частей структуры программы дает возможность определить и оценить степень проведенной проверки в данном сеансе, а также проконтролировать при окончании отладки выполнение выбранного критерия по проверке маршрутов программы. [9]
Процесс тестирования как один из этапов разработки ПО, занимает по оценкам специалистов от 30 до 50 %: общего времени разработки, поэтому все большее значение приобретают вопросы его организации: планирование тестирования; разработка тестовых средств. Средства тестирования - это совокупность тест-программ и инструкций, определяющих методологию процесса тестирования. [10]
Проведено планирование тестирования программы. Планирование тестирования осуществляется на - основе - информации, структурных характеристик, а также числовых данных, характеризующих структурную сложность программы. Структурные и числовые характеристики позволяют выбрать критерии полноты проверки программы, определить план проведения тестирования и подготовить соответствующие тесты для исполнения программы. При создании - плана проведения тестирования необходимо, - чтобы вся информация, характеризующая процесс исполнения программы, позволяла бы получить полную картину взаимодействия различных частей программы. [11]
При нисходящей разработке большая часть общих затрат времени уходит на планирование, а меньшая - на реализацию. Даже для большого проекта увеличение времени на планирование означает дополнительную затрату времени лишь несколькими людьми. Нисходящее планирование требует не менее двух человек: один несет ответственность за план целиком и еще один или несколько человек отвечают за выбор тестов и планирование тестирования. [12]
Эти стратегии тестирования позволяют сосредоточить внимание разработчиков на анализе наиболее важных компонент программ. При стратегии 1 первоочередному тестированию подлежат маршруты, наиболее длинные по числу команд и по времени исполнения. Им соответствуют обычно маршруты с наибольшим объемом вычислений и преобразований переменных. Эта стратегия целесообразна при планировании тестирования программ, имеющих вычислительный характер обработки данных при небольшом числе логических условий и маршрутов исполнения программ. При стратегии 2 приоритет отдается маршрутам, наиболее сложным по числу анализируемых условий. Такая стратегия предпочтительна при тестировании логических программ с небольшим количеством вычислений. При обеих стратегиях на завершающие этапы тестирования остаются простые по вычислениям или по логике маршруты, для которых необходимы относительно короткие тесты. [13]
Во всем диапазоне исходных переменных следует выбрать несколько характерных точек ( предельные значения и несколько промежуточных), при которых проверяется программа. В точках разрыва функции необходимо планировать дополнительные проверки. Значительные трудности возникают при планировании тестирования программ, рассчитывающих сложные функции мно гих переменных. Рациональным выбором контрольных точек на базе методов многофакторного анализа и планирования экспериментов можно получить заданные достоверности проверки выходных данных более экономно. [14]
Первый вид тестирования должен обеспечить проверку функционирования схем принятия решений и преобразования логических переменных. Для логических переменных отсутствует сильная корреляционная связь между соседними значениями и каждое изменение разряда переменной может определять разные области результирующих значений. Такое преобразование переменных обеспечивается путем создания алгоритмов со сложной логической структурой, содержащей ряд проверок логических условий, циклов для поиска и селекции переменных, а также логических преобразований переменных. В результате в программе образуется множество маршрутов обработки исходных данных, каждый из которых должен быть проверен. Планирование тестирования в этом случае усложняется, прежде всего, из-за резкого возрастания размерности решаемой задачи. [15]