Автоматизация тестирования
Автоматизированное тестирование (automated testing, test automation) — набор техник, подходов и инструментальных средств, позволяющий исключить человека из выполнения некоторых задач в процессе тестирования.
особенность
Особенность автоматизированных тест-кейсов — это источники данных и способы их генерации.
Если мы планируем выполнить тест-кейс 50–100–500 раз с разными входными данными, вручную столько данных мы не подготовим.
Источниками данных в такой ситуации могут стать:
применение
Области применения автоматизации:
сложно автоматизировать
Сложно автоматизировать следующее:
преимущества
Преимущества автоматизации тестирования:
недостатки
Недостатки автоматизации тестирования:
инструменты
Инструменты автоматизации
эффективность
Оценка эффективности автоматизации
TManTotal = NTman + NR * TManRun
TAutoTotal = TAuto + NTAutoRun + NR * TAutoMull
Если TManTotal >= TAutoTotal, то автоматизация имеет смысл
TMan — время на разработку тест-кейсов и чек-листов, использующихся в тестировании данной функциональности
TManRun – время, затрачиваемое на однократное тестирование функций вручную
N — планируемое количество итераций в данном продукте до его завершения
R – среднее число сборок продукта, требующих повторного тестирования в рамках одного релиза
TAuto — время на разработку набора автотестов, покрывающих определённый модуль или функции проекта
TAutoRun — время, затрачиваемое на переделку автотестов в случае изменения функций
TAutoMull — время, затрачиваемое на анализ результатов выполнения автотестов