F.I.R.S.T.: критерии качества тестов

Допустим, Вы работаете QA-специалистом и написали тест для проверки ПО. Как узнать, действительно ли это хороший тест? Ответ на этот вопрос – в критериях FIRST.

Тестировщик » QA-блог » Прочее » F.I.R.S.T.: критерии качества тестов

Оценка качества модульных тестов по критериям F.I.R.S.T.

F.I.R.S.T.— это аббревиатура по первым буквам требований, которые выдвигаются к тестам. Имеются в виду модульные тесты, но в принципе их можно адаптировать и на другие виды проверок. Автор FIRST Principles – Роберт Мартин, всемирно известный инженер по разработке программного обеспечения. 

На изображение оценка качества модульных тестов по критериям F.I.R.S.T.

Каждый (модульный) тест может считаться годным, если проходит по следующими критериям:

F – Fast (Быстрота)

Тест должен выполняться за относительно короткое время. Не стоит писать проверки, которые будут иметь слишком большую длительность и потребуют значительных трудозатрат в пересчете на один тест.

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

I – Independent (Независимость)

Выполнение одного теста не должно зависеть от выполнения предыдущих. Проще говоря, результаты выполнения одного не должны быть входными условиями для другого.

Этот критерий устраняет риск такой ситуации, что если один из тестов не сработает, то «подвиснет» выполнение других. Независимость проверок дает свободу в применении проверок и обеспечивает эффективное управление тестированием.

R – Repeatable (Воспроизводимость)

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

Этот критерий нужен для того, чтобы результаты тестирования (особенно регрессионного) можно было сопоставить между собой и проанализировать. Воспроизводимость обеспечивает базу для сравнения. Исходя из нее, тестировщик или разработчик могут изучить поведение ПО в аналогичных ситуациях и сделать выводы о том, где может содержаться ошибка.

S – Self-Validating (Очевидность)

Иногда в русскоязычных источниках этот критерий переводят дословно как «Самодостоверность». На самом деле имеется в виду, что результат теста должен быть настолько прост для трактовки, насколько это возможно. В идеальном случае – 0/1 (значение из булевой алгебры, «прошел/не прошел»). Поэтому для Self-Validating по смыслу больше подходит перевод «Очевидность» или «Простота интерпретации».

Этот критерий нужен, чтобы QA-специалисты и разработчики не теряли времени, пытаясь «расшифровать» результат проверки. Члену команды проекта должно быть достаточно одного взгляда на результаты батареи тестов, чтобы понять, где выявлены дефекты, и далее тратить ресурсы только на них.

T – Timely (Своевременность)

Этот критерий можно иронически называть «Дорога ложка к обеду». Действительно, тесты должны быть готовы к моменту проверки. Иначе возможны 2 варианта:

  • Все стоят и ждут, когда QA-специалист допишет тесты, а это серьезная потеря времени (и денег);
  • Тестирование откладывают на «потом», а это риск того, что про них просто-напросто забудут.

Поэтому, по-хорошему, тесты должны создаваться либо до кодинга, либо параллельно с кодингом, либо непосредственно после. Чем раньше – тем меньше риска потери ценного ресурса – рабочего времени айтишников.

Другие критерии 

Помимо F.I.R.S.T. имеются и другие критерии годности тестов. За долгие годы QA-практики их было разработано достаточно много. Однако, FIRST считается самым популярным, поэтому начинающему тестировщику следует его понимать.

Резюме

В тестировании есть специальный подход, который позволяет судить, насколько хорошо написаны модульные (и другие) тесты. Он называется F.I.R.S.T., по первым буквам признаков-критериев Fast (Быстрота), Independent (Независимость), Repeatable (Повторяемость), Self-Validating (Очевидность) и Timely (Своевременность). Грамотный тестировщик должен знать и понимать данные критерии, чтобы создавать эффективные тесты.

на изображение автор Михаил Кулешов

Автор Михаил Кулешов

Михаил, профессиональный партнерский маркетолог, является основателем компании South Media OÜ, которая была создана в 2018 году и базируется в Таллинне. С 2016 года Михаил уехал из Финляндии и жил как настоящий «цифровой кочевник» в IT-индустрии, путешествуя по миру только с ноутбуком. Михаил работает и пишет статьи, связанные с IT-индустрией.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *