Опубликован: 05.03.2005 | Доступ: свободный | Студентов: 14154 / 1942 | Оценка: 4.11 / 3.63 | Длительность: 13:20:00
ISBN: 978-5-9556-0027-7
Специальности: Тестировщик
Лекция 9:

Особенности индустриального тестирования

< Лекция 8 || Лекция 9: 1234 || Лекция 10 >

Процесс тестирования

Как отмечалось в подразделе 2.4, в тестировании выделяются три основных уровня, или три фазы:

  1. Модульное тестирование.
  2. Интеграционное тестирование.
  3. Системное тестирование.

Задача планирования активности тестирования состоит в оптимальном распределении ресурсов между всеми типами тестирования. В дальнейшем изложении мы сконцентрируемся на системной фазе тестирования, как на наиболее важной и критичной активности для разработки качественного программного продукта.

Фазы процесса тестирования

В процессе тестирования выделяют следующие фазы:

  1. Определение целей (требований к тестированию), включающее следующую конкретизацию: какие части системы будут тестироваться, какие аспекты их работы будут выбраны для проверки, каково желаемое качество и т.п.
  2. Планирование: создание графика (расписания) разработки тестов для каждой тестируемой подсистемы; оценка необходимых человеческих, программных и аппаратных ресурсов; разработка расписания тестовых циклов. Важно отметить, что расписание тестирования обязательно должно быть согласовано с расписанием разработки создаваемой системы, поскольку наличие исполняемой версии разрабатываемой системы ( Implementation Under Testing (IUT) или Application Under Testing (AUT) – часто употребляемые обозначения для тестируемой системы) является одним из необходимых условий тестирования, что создает взаимозависимость в работе команд тестировщиков и разработчиков.
  3. Разработка тестов, то есть тестового кода для тестируемой системы, если необходимо - кода системы автоматизации тестирования и тестовых процедур (выполняемых вручную).
  4. Выполнение тестов: реализация тестовых циклов.
  5. Анализ результатов.

После анализа результатов возможно повторение процесса тестирования, начиная с пунктов 3, 2 или даже 1.

Тестовый цикл

Тестовый цикл – это цикл исполнения тестов, включающий фазы 4 и 5 тестового процесса. Тестовый цикл заключается в прогоне разработанных тестов на некотором однозначно определяемом срезе системы (состоянии кода разрабатываемой системы). Обычно такой срез системы называют build. Тестовый цикл включает следующую последовательность действий:

  1. Проверка готовности системы и тестов к проведению тестового цикла включающая:

    • Проверку того, что все тесты, запланированные для исполнения на данном цикле, разработаны и помещены в систему версионного контроля.
    • Проверку того, что все подсистемы, запланированные для тестирования на данном цикле, разработаны и помещены в систему версионного контроля.
    • Проверку того, что разработана и задокументирована процедура определения и создания среза системы, или build.
    • Проверки некоторых дополнительных критериев.
  2. Подготовка тестовой машины в соответствии с требованиями, определенными на этапе планирования (например, полная очистка и переустановка системного программного обеспечения). Конфигурация тестовой машины, так же, как и срез системы, должны быть однозначно воспроизводимыми.
  3. Воспроизведение среза системы.
  4. Прогон тестов в соответствии с задокументированными процедурами.
  5. Сохранение тестовых протоколов (test log). Test log может содержать вывод системы в STDOUT, список результатов сравнения полученных при исполнении данных с эталонными или любые другие выходные данные тестов, с помощью которых можно проверить правильность работы системы.
  6. Анализ протоколов тестирования и принятие решения о том прошел или не прошел каждый из тестов ( Pass/Fail ).
  7. Анализ и документирование результатов цикла.

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

< Лекция 8 || Лекция 9: 1234 || Лекция 10 >
Анастасия Соляник
Анастасия Соляник
Ольга Софинская
Ольга Софинская

Прошла он-лайн курс "Основы тестирования программного обеспечения"

Андрей Емелин
Андрей Емелин
Россия
Арина Барсукова
Арина Барсукова
Россия, Москва