Тестирование проектной информации и его состаных частей
Практика разработки програмнного изделия выделяет 2 стратегии тестирования программ
- стратегия черного ящика (тестирование с управлением по данным по входу/выходу игнорируют внутреннюю структуру программ, а целью тестирования является выявление обстоятельств, при котором поведение программы не соответствует её спецификациям. При таком подходе обнаружение всех ошибок в программе может быть достигнуто только путем исчерпывающего тестирования, т.е. только тогда, когда в качестве тестовых наборов используются все возможные наборы исходных данных)
- стратегия белого ящика
Появились понятия результативного (оценивается числом ошибок за один прогон) и эффективного (подмножество всех возможных тестов, которые имеют наивысшую вероятность обнаружения большинства ошибок программы) тестов.
Для получения эффективного набора тестов при стратегии черного ящика обычно используются следующие методы:
· метод эквививалентного разбиения (состоит в разбиении входной области программы на конечное число классов эквивалентности, при котором каждый тест некоторого класса эквивалентности в смысле обнаружения ошибок эквивалентен любому другому классу). Классы эквивалентности стоятся на основе анализа входных данных или входных условий спецификаций, в которых и опредлена вся входная инфорация.
|
|
· метод граничных значения (дополненный анализом граничных значений входных условий и анализов выходных условий методом эквивалентного разбиения, т.е. если для конкретного класса эквивалентности при использовании метода эквивалетного разбиения требовался один тест, то в нашем случае необходимо построить тест для границы области и чуть-чуть выходя за границу области. Аналогично строятся тесты, покрывающие cграницы и классы эквивалентности выходных условий).
Главным недостатком этих 2 методов является то, что они не рассматривают комбинации входных условий.
· функциональные диаграммы (был разработан IBM (реализация причинно-следственных связей, дающая побочных эффект, проверка полноты и однозначности спецификаций, реализованных на втором этапе программного обеспечения)и предсталяет собой формальный язык, на котором транслируются спецификации, написанные на ествественном языке осуществляется в несколько этапов. Для уменьшения грамосткости и трудоемкости спецификаций разбивается все рабочее поле на участки)
· гипотеза ошибок
Покрытие – когда в программе должен работать хотя бы один раз каждый оператор.
Анализ ошибок показывает, что подавляющее число ошибок обусловлено плохой организацией разработки ПО на всех этапах разработки ПО и на всех стадиях.
- выбор оптимальной технологии и использование мощных инструментальных средств, позволяющих контролировать сам процесс разработки, где процесс разработки регламентирует некоторые действия, позволяющие избежать ошибки