- •«Уральский промышленно-экономический техникум»
- •Технология разработки программного обеспечения: тестирование
- •Структурный метод (метод «Белого (стеклянного) ящика»)
- •Поведенческий метод «Черного ящика»
- •Метод регрессивного тестирования
- •Метод «Серого ящика»
- •Метод опытной эксплуатации
- •Тестирование эргономичности
- •Метод анализа граничных значений
- •Метод тестирования таблицы решений
- •Метод эквивалентного разбиения
- •Отладка программы
- •7.1. Процессы жц верификация и валидация программ
- •7.2. Тестирование программ
- •7.2.1. Статические методы тестирования
- •7.2.2. Динамические методы тестирования
- •7.2.3. Функциональное тестирование
- •7.3. Инфраструктура процесса тестирования пс
- •7.3.1. Методы поиска ошибок в программах
- •7.3.2. Классификация ошибок и тестов
- •7.3.1. Служба тестирования пс
- •7.3.2. Управление процессом тестирования
7.3.2. Управление процессом тестирования
Все способы тестирования ПС объединяются базой данных, где помещаются результаты тестирования системы. В ней содержатся все компоненты, тестовые контрольные данные, результаты тестирования и информация о документировании процесса тестирования.
База данных проекта поддерживается специальными инструментальными средствами типа CASE, которые обеспечивают ведение анализа ПрО, сборку данных об их объектах, потоках данных и тому подобное. База данных проекта хранит также начальные и эталонные данные, которые используются для сопоставления данных,накопленных в базе, с данными, которые получены в процессе тестирования системы.
При тестировании выполняются разные виды расчетов характеристик этого процесса и способы планирования и управления.
Расчет продолжительности выполнения функций путем сбора средних показателей скорости выполнения операторов без выполнения программы на машине. Выявляются компоненты, которые требуют большого времени выполнения в реальной среде.
Управление выполнением тестирования путем подбора тестов проверки, их выполнения, селекции результатов тестирования и проведения сопоставления с эталонными значениями. Результаты данного процесса отображаются на дисплее, например, в графической форме (пути прохождения по графу программы), в виде диаграмм UML, данных об отказах и ошибках или конкретных значений исходных параметров программы. Эти данные анализируются разработчиками для формулирования выводов о направлениях дальнейшей проверки правильности программы или их завершении.
Планирование тестирования предназначено для распределения сроков работ по тестированию, распределения тестировщиков по отдельным видам работ и составления ими тестов проверки системы. Определяются стратегия и пути тестирования. В диалоге запрашиваются данные о реальных значениях процесса выполнения системы, структуре ветвления вершин графа и параметрах циклов. Проверенные циклы, как правило, изымаются из путей выполнения программы. При планировании путей выполнения создаются соответствующие тесты, критерии и входные значения.
Документирование результатов тестирования в соответствии с действующим стандартом ANSI/IEEE 829 включает:
описание задач, назначение и содержание ПС, а также перечень функций в соответствии с требованиями заказчика;
технологии разработки системы;
планов тестирования различных объектов, необходимых ресурсов, соответствующих специалистов для проведения тестирования и технологических способов;
тестов, контрольных примеров, критериев и ограничений, оценки результатов программного продукта, а также процесса тестирования;
учета процесса тестирования, составление отчетов об аномальных событиях, отказах и дефектах в итоговом документе системы.Таким образом, были рассмотрены современные методы и процессы верификации и тестирования ПС, основанные на понятии программы - "белый ящик" и "черный ящик", а также на анализе реализованных в ПС функций. Определены критерии тестирования, типы ошибок, обнаруживаемых в программах, а также отказы и ошибки на этапах ЖЦ процесса тестирования. Сформулированы цели и задачи группы тестировщиков.
Контрольные вопросы и задания
Назовите формальные методы проверки правильности программ.
Какие процессы проверки зафиксированы в стандарте?
Какие функции у процесса верификации программ?
Назовите основные задачи процесса валидации программ.
Сравните задачи процессов верификации и валидации программ.
В чем отличие верификации и валидации?
Определите процесс тестирования.
Назовите методы тестирования.
Объясните значения терминов "черный ящик", "белый ящик".
Назовите объекты тестирования и подходы к их тестированию.
Какая существует классификация типов ошибок в программах?
Определите основные процессы ЖЦ тестирования ПО.
Наведите классификацию тестов для проверки ПО.
Какие задачи выполняет группа текстовиков?
Какая организация работ в проведении тестирования?
