Описание тега automated-tests

Автоматизация тестирования - это использование программного обеспечения для управления выполнением тестов, сравнения фактических результатов с прогнозируемыми, установки предварительных условий тестирования и других функций управления тестированием и отчетов по тестированию. Обычно автоматизация тестирования включает автоматизацию уже существующего ручного процесса, который использует формализованный процесс тестирования (wikipedia.org).

Согласно wikipedia.org:

Автоматизация тестирования - это использование программного обеспечения для управления выполнением тестов, сравнения фактических результатов с прогнозируемыми, установки предварительных условий тестирования и других функций управления тестированием и отчетов по тестированию. Обычно автоматизация тестирования включает автоматизацию уже существующего ручного процесса, в котором используется формализованный процесс тестирования.

Есть два общих подхода к автоматизации тестирования:

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

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

Принцип автоматизированного тестирования заключается в том, что существует программа (которая может быть потоком заданий), которая запускает тестируемую программу, подает ей правильный ввод и проверяет вывод на соответствие ожидаемому результату. После того, как набор тестов написан, вмешательство человека не требуется ни для запуска программы, ни для проверки того, работает ли она; набор тестов делает все это и каким-то образом указывает, был ли результат программы таким, как ожидалось.

Test Automation также имеет специальный раздел в сообществе Software QA & Testing.