2. Основные принципы тестирования
Преподаватель: Машарова Р.В.
Курс: 4
Специальность: Программирование в компьютерных системах
Дисциплина: ПДП Преддипломная практика
Группа: 1 ПКС-18
Список студентов Абрамов И.С. Бермес А. Кинаш Т.Р. Никоноров Н.С. Павлова Д.В. Селезнева А.Д. Хоменков Р.Е.
Дата: 19..05.2022
Тема: Средства тестирования программ.
Цель:
- систематизировать знания о средствах тестирования программ
Задание:
1. Сделать сравнительный анализ средств тестирования программ
План:
1. Тестирование программ
2. Основные принципы тестирования
3. Объекты тестирования. Категории тестов
1. Тестирование программ
Тестирование – процесс анализа программы или контролируемого выполнения программы на конечном множестве входных данных с целью обнаружения ошибок
Статическое – анализ текста программы
Динамическое – анализ контролируемого выполнения
Методы тестирования – совокупность правил, регламентирующих последовательность шагов по тестированию
Критерии тестирования – оценки, позволяющие судить о достаточности выполненного тестирования
Результативным считается тест, который приводит к обнаружению ошибки. Тестирование – деструктивный процесс.
Тест – набор входных данных, набор ожидаемых результатов, набор условий, разработанных для проверки определенного пути выполнения программы.
Особенности
1) Частое отсутствие полностью определенного эталона, которому должны соответствовать результаты
2) Высокая сложность программ исключает исчерпывающее тестирование (проверка всех возможных маршрутов выполнения)
3) Невысокая формализация критериев завершения тестирования
2. Основные принципы тестирования
1) Нельзя планировать тестирование в предположении, что ошибки отсутствуют
2) Следует избегать тестирования программы ее автором
3) Описание предполагаемых значений результатов должно быть неотъемлемой частью теста
4) Тесты для неправильных входных данных следует разрабатывать также тщательно, как и для правильных
5) Следует понимать, сто вероятность наличия необнаруженных ошибок пропорциональна числу уже обнаруженных
6) Не следует выбрасывать тесты, даже если программа уже не используется
3. Объекты тестирования. Категории тестов
1) Спецификации программных модулей, групп программ и программных комплексов
- полнота и согласованность функций программных компонент
- согласованность интерфейсов программных компонент (для групп программ и комплексов)
2) Программные модули
- структура
- преобразование данных, выполняемое модулем
- полнота функций, выполняемых модулем
3) Группы программ, объединенные для решения законченной функциональной задачи
- то же, что и для модулей
- интерфейс между программами
- тестирование потребления ресурсов
4) Программный комплекс, используемый для решения нескольких функциональных задач
- полнота решения функциональных задач
- функционирование программ в критических ситуациях
- тестирование потребления ресурсов
- оценка надежности работы комплекса
- эффективность защиты от искажения общих данных
5) Программное средство, сдаваемое в опытную эксплуатацию
- то же, что и для 4)
- удобство инсталляции рабочей версии программы
- проверка работы при изменении конфигурации оборудования
- проверка наличия и корректности документации
- испытание на соответствие техническому заданию
6) Программное средство на стадии сопровождения
- удобство модификации, типа расширения функциональности и повышения эффективности
1 – Спецификации
2 – Модули
3 – Группы программ
4 – Программные комплексы на стадии отладки
5 – Программные комплексы как продукты
Виды и методы тестирования
Особенности нисходящего тестирования:
Достоинства:
- с самого начала выполняется проверка главных функций – концептуальная проверка
Недостатки:
- необходимость разработки заглушек, часто достаточно интеллектуальных
- параллельная разработка модулей различных уровней не всегда обеспечивает возможность нужной последовательности тестирования модулей разных уровней
Особенности восходящего тестирования
Достоинства:
- для тестирования используются готовые модули нижних уровней
Недостатки:
- необходимость разработки тест-драйверов для управления работой нижних уровней с верхних
- отложенная проверка основной концепции функционирования комплекса
1) Модульное тестирование. Включает проверку:
- корректности структуры модуля
- корректности основных конструктивных компонент
- полноты и качества реализации функций обработки данных
Структурная корректность проверяется структурными методами по принципу «белого ящика»
2) Интеграционное тестирование. Проверка:
- корректности объединения модулей в группу или комплекс программ
Проводится на основе 2-х подходов:
- монолитное тестирование, при котором модули сразу объединяются в единый комплекс и после этого вместе тестируются
- инкрементальное (пошаговое), модули подключаются друг к другу последовательно (снизу вверх или сверху вниз)
Использует структурную проверку подключаемых модулей и функциональную проверку полноты и качества реализации функций. Функциональные проверки осуществляются по принципу «черного ящика»
Интернет ресурсы и источники:
1. Инструктивно-методические рекомендации по учебно-методическому обеспечению практики обучающихся http://ptoprof.narod.ru/doc/pismo_MON_2201-18.1-31.pdf
2. https://studfile.net/preview/913485/page:11/