Базовые понятия автоматизированного тестирования | OTUS

Базовые понятия автоматизированного тестирования

Автоматизированное тестирование — не самая простая тема в сфере IT. Подступиться к ней бывает не так уж и просто, так как материалов существует очень много, но они могут быть либо противоречивы, либо неактуальны для используемой платформы. В этой статье мы кратко рассмотрим важные базовые понятия.

1_VLJslkBqhEcbw5xXKDUi5Q_1-1801-5915e4.jpeg

Итак, приступим:

  1. System Under Test (SUT) — это тестируемая система. В зависимости от типа автотеста, системой могут быть различные сущности.
  2. Black box testing — тестирование SUT при отсутствии информации о деталях внутреннего устройства тестируемой системы.
  3. White box testing — тестирование с учетом деталей внутреннего устройства SUT.
  4. Gray box testing -- комбинация подходов.
  5. Test doubles -- тестовые дублеры, они же фиктивные объекты, которые заменяют объекты реальные, что необходимо для достижения целей автотеста.

1-1801-5b5d13.png

Говоря о тестовых дублерах, следует добавить, что они позволяют:

  • зафиксировать тестовое окружение, сымитировав нестабильные, медленные либо нереализованные внешние объекты (базу данных, сервер);
  • выполнять проверки своих вызовов (обращений ко свойствам, к функциям).

Наиболее хорошо известны 5 типов тестовых дублеров, разных по свойствам: Dummy, Stub, Spy, Fake, Mock. Рассмотрим некоторые из них:

Stub — объект, возвращающий при вызовах его функций/свойств предустановленные (hardcoded) результаты, при этом код реального объекта не выполняется. Когда же функция возвращаемого значения не имеет, вызов просто игнорируется. Mock — объект, который позволяет проверять поведение SUT посредством отслеживания обращений к функциям/свойствам объекта (например, были ли в ходе автотеста вызваны функции мока, в правильном ли это произошло порядке, были ли переданы в них ожидаемые аргументы и т. п. Также Mock может включать функциональность Stub.

Впрочем, подробнее об этих и других видах дублеров лучше читать в первоисточнике. 1-1801-0fbc78.png

Несколько слов о качестве автотестов

При разработке автоматизированных тестов важно обеспечить их базовое качество. Следовательно, здесь следует соблюдать ряд правил написания кода, сформулированных Робертом Мартином в книге "Clean Code". Речь идет о глобальных принципах F.I.R.S.T.:

  1. Fast — автотесты должны выполняться быстро.
  2. Independent — автотесты не должны друг от друга зависеть, то есть их можно выполнять в любом порядке.
  3. Repeatable — результат выполнения автотестов должен быть одинаков вне зависимости от среды выполнения.
  4. Self-validating — важно, чтобы автоматизированные тесты однозначно сообщали о том, является ли их прохождение успешным либо нет.
  5. Timely — автотесты должны создаваться своевременно.

1-1801-5c2100.png

По материалам https://vc.ru/dev/199012-bystryy-start-gayd-po-avtomatizirovannomu-testirovaniyu-dlya-android-razrabotchika-jvm.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто