Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы с ответами 2018.doc.doc
Скачиваний:
18
Добавлен:
16.05.2023
Размер:
2.1 Mб
Скачать

19. Этапы жизненного цикла (жц) программных продуктов (пп). Схема жц пп.*

Анализ( по средствам к-го осущ-я опис-е требований ПП)

Проектирование (включ. Разработку иерархич. Структуры разработки ПО)

Программирование

Тестирование и отладка( в процессе к-х выявлен в соответствии ПП и его спецификации

Эксплуатация и сопровождение

20. Функциональное и структурное тестирование программ: цели, отличия стратегий, рекомендации по применению.*

Структурное тестирование (белого ящика) применяют на ранних стадиях кодирования и тестирования для выявления и устранения в основном алгоритмических ошибок.

Функциональное тестирование (черного ящика) применяют на более поздних стадиях тестирования для выявления и устранения ошибок интерфейса, а также некорректных и отсутствующих функций обработки данных.

Структурный подход базируется на том, что известна структура тестируемого программного обеспечения, в том числе его алгоритмы («стеклянный ящик»). В этом случае тесты строят так, чтобы проверить правильность реализации заданной логики в коде программы.

Критерий исчерпывающего тестирования - это выполнение каждого пути программы (т.е. последовательности инструкций от начала до конца программы). Реально тестирование всех путей программы практически неосуществимо, так как число путей при наличии циклов может быть бесконечно большим. Поэтому вместо полного тестирования реализуемый и достаточно надежный критерий тестирования ветвей: каждая ветвь алгоритма должна быть пройдена хотя бы один раз.

Исходными тестовыми наборами данных при структурном тестировании могут служить функциональные тесты. Вначале тестирование ветвей проводим для этих тестовых наборов данных. Если в результате проверки не все ветви пройдены, то следует добавить соответствующие тестовые наборы данных.

Тестовые наборы данных готовятся, как правило, вручную. Подготовка программы для тестирования зависит от метода тестирования.

Функциональный подход основывается на том, что структура программного обеспечения не известна («черный ящик»). В этом случае тесты строят, опираясь на функциональные спецификации. Этот подход называют также подходом, управляемым данными, так как при его использовании тесты строят на базе различных способов декомпозиции множества данных. Наборы тестов, полученные в соответствии с методами этих подходов, обычно объединяют, обеспечивая всестороннее тестирование программного обеспечения.

Цель функционального тестирования - найти расхождение между программой и ее внешними спецификациями. Необходимым условием успешного функционального тестирования является наличие четких и точных внешних спецификаций. При функциональном подходе исчерпывающее тестирование реальных задач невозможно из-за огромного числа комбинаций входных и выходных данных. Задачей тестирования является выделение наиболее реальных ситуаций и пренебрежение малозначительными ситуациями. Тесты должны строиться для всех входных условий, а также на границах, всех областей допустимых значений на входе и областей изменения на выходе. Тесты должны проверять поведение программы у функциональных границ также в случаях ввода недопустимых или непредусмотренных данных.

При проектировании функциональных тестов, надлежит выполнить следующие рекомендации

1) Просматривая разделы "Входные данные". "Аномалии" принимать во внимание область определения входных данных. Тесты рекомендуется строить для допустимых, граничных и недопустимых значений входных данных.

2) Просматривая раздел "Выходные данные", установить функциональные границы, которые будут определяться областью значений результатов. Построить тесты, учитывая эти функциональные границы.