Основные принципы и стадии тестирования
25.09.2024
Процесс разработки ПО включает три стадии тестирования:
Тестирование отдельных компонентов.
Комплексное тестирование системы.
Оценочное тестирование на соответствие критериям качества.
Принципы тестирования:
Результаты известны до начала теста.
Тестирование не проводится автором программы.
Изучаются все результаты тестов.
Проверяются неверные данные и неожиданные побочные эффекты.
Ручное тестирование
Ручное тестирование проводится на ранних этапах разработки для анализа проектных решений. Существуют два подхода:
Статический: анализ структуры и данных программы.
Динамический: моделирование выполнения программы вручную.
Исходные данные для тестов включают ТЗ, спецификации и алгоритмы.
Методы ручного тестирования
Инспекции исходного текста: группа специалистов проверяет код программы. Цель — выявить ошибки, проверить логику программы и соблюдение стандартов.
Сквозные просмотры: группа людей проверяет текст программы, моделируя выполнение тестов.
Проверка за столом: один человек анализирует код, проверяя его по списку ошибок.
Оценка программ: анонимная оценка программ по качеству и простоте эксплуатации.
Стратегии тестирования
Структурное тестирование: методы «белого ящика», проверка логики программы по алгоритмам. Требуется выполнение всех операторов хотя бы раз.
Функциональное тестирование: методы «черного ящика», проверка по функциональным спецификациям без знания внутренней структуры программы.
Стратегии тестирования
Структурное тестирование: методы «белого ящика», проверка логики программы по алгоритмам. Требуется выполнение всех операторов хотя бы раз.
Функциональное тестирование: методы «черного ящика», проверка по функциональным спецификациям без знания внутренней структуры программы.
Структурное тестирование
Тестирование всех маршрутов программы. Недостатки:
Не выявляет пропущенные маршруты.
Не обнаруживает ошибок, зависящих от данных.
Не гарантирует полное тестирование.
Критерии покрытия: покрытие операторов, решений, условий, комбинаторное покрытие условий.
Заключение
Тестирование — важный этап разработки, занимающий до 60% трудозатрат. Объединение методов структурного и функционального тестирования обеспечивает всестороннюю проверку программы.
Last updated