четверг, 14 мая 2020 г.

Результат в тест-кейсе — один или много?


В тест-кейсе может быть один ожидаемый результат. Или их может быть много. Все варианты имеют право на существование. Важно лишь то, чтобы это читалось понятно. Выполнила шаг — сразу проверила. Или выполнила все шаги и получила результат. Только не пытайтесь запутать читателя, когда все наоборот.


Один результат после всех шагов


Если результат один, то он идет после выполнения всех-всех-всех шагов:

Шарлотка  
Предварительные шаги 
Сходить в магазин и купить:
  1. Яйца;
  2. Яблоки;
  3. Муку;
  4. Молоко;
  5. Сахар.
Шаги
  1. Яйца взбить с сахаром (взбивать не менее 5–7 минут).
  2. Добавить муку, хорошо перемешать.
  3. Яблоки почистить, удалить сердцевину, нарезать небольшими дольками.
  4. Форму для выпечки смазать маслом.
  5. На тесто выложить половину яблок (яблоки можно посыпать корицей).
  6. На яблоки вылить половину оставшегося теста.
  7. На тесто выложить оставшиеся яблоки.
  8. На яблоки вылить оставшееся тесто. 
  9. Поставить в разогретую до 180 градусов духовку. 
  10. Выпекать в течение 40–60 минут (в зависимости от размера формы).
Ожидаемый результат 
Вкусная шарлотка! Которую родные уминают за 5 минут.

Выполнили все 10 шагов? Получили шарлотку! Также и в ПО: выполняем все шаги, получаем результат.


Предварительные шаги 
Зарегистрироваться на сайте с именем «Ольга», логином ABC и паролем «1» (см тест-кейс «Регистрация») 
Шаги 
  1. Открыть сайт https://www.example.com/   
  2. Нажать на кнопку «Войти».
  3. Ввести свои данные (логин – ABC, пароль – 1), нажать «войти»
Ожидаемый результат 
Открылась главная страница сайта.
В верхнем правом углу отображается приветствие — «Здравствуйте, Ольга»


Результат на каждый шаг


Можно писать ожидаемый результат на каждый шаг. Но тут важно подумать о тех, кто будет наш тест-кейс читать. Если вы пишите результат на каждый шаг — это должна быть табличка, а не так, что идут 1-2-3-4-5-6 шагов, а потом БАХ, в результате "открыта главная страница сайта" О_О

Если результат на каждый шаг — он пишется напротив него.



ПЛОХО


Шаги

  1. Открыть сайт https://www.example.com/   
  2. Нажать на кнопку «Зарегистрироваться».
  3. Ввести имя «Ольга» и пароль 1
  4. Нажать «Сохранить»

Ожидаемый результат

  1. Открылась главная страница сайта.
  2. Открылось окно регистрации
  3. Данные введены
  4. Редирект на главную страницу, после регистрации мы сразу входит в систему. В верхнем правом углу отображается приветствие - «Здравствуйте, Ольга»

Как люди обычно читают? Слева направо, сверху вниз. Так что я сначала выполнила 4 шага, а потом увидела ОР на первый... И как мне его теперь проверять? Все закрывать и повторять тест-кейс сначала? А если там не 4 простых шага будет, а 20 сложных? Это раздражает... Поэтому, если хотите, чтобы проверка была на каждый шаг, делайте сразу красиво.


ХОРОШО

Шаги
Результат
1
Открыть сайт https://www.example.com/
Открылась главная страница сайта
2
Нажать «Зарегистрироваться».
Открылось окно регистрации
3
Ввести имя «Ольга» и пароль 1.
Данные введены
4
Нажать «Сохранить»
Редирект на главную страницу сайта, сверху приветствие «Привет, Ольга»!



Если вспоминать аналогию с рецептом, то в рецептах иногда так и делают, например, на сайте Анастасии Скрипкиной https://www.say7.info/. Открываешь любой рецепт и сразу видишь на каждый шаг ожидаемый результат, в виде картинки:



А теперь представьте себе, если бы сначала шел рецепт, а после него — куча картинок. И вам бы пришлось тратить время на сопоставление, что вообще к чему относится.

Так, шаг прочитал, ищешь картинку под него. Ну, вроде похоже. Возвращаемся к шагам. Стоп, а на каком шаге я остановился? Блин, надо вспоминать... О, вот на этом. Так, где под него картинка? Снова ищем...

При наличии альтернатив вернулись бы вы на сайт, который заставляет вас впустую тратить время? Вот то-то же. Думайте о людях, которые будут читать ваши кейсы. Они не телепаты, заранее не знают, что их поджидает после выполнения 10 шагов. И, если результат не написан напротив каждого, то они будут ожидать один и общий.


Несколько результатов для разных проверок


Возможно, вы уже догадались о главном недостатке тест-кейсов — большом количестве копипасты. Если мы проводим несколько разных тестов на одно поле, то получаем десятки тестов с одними и теми же шагами, иногда даже с одним и тем же результатом. И если что-то изменится, надо исправлять их все…

Как один из способов уменьшения копипасты используют объединение тест-кейсов и чек-листов. Это значит, что мы пишем вроде как тест-кейс, но начинаем засовывать в него несколько разных проверок. Так то у нас «один тест-кейс = одна проверка», а здесь не совсем.

На самом деле это больше похоже на чек-лист с предварительными шагами «как мне дойти досюда вообще»:

Регистрация с корректным именем

Шаги

  1. Открыть сайт https://www.example.com/  
  2. Нажать «Зарегистрироваться».
  3. Ввести имя из таблицы ниже и пароль 1.
  4. Нажать «Сохранить»

Вводимое значение
Ожидаемый результат
  1. Свое имя (например, Ольга)
  2. Короткое имя (Ева)
  3. Длинное имя (Аполлинария)
  4. Составное имя (…)
  5. ...
  1. Успешная регистрация
  2. Успешная регистрация
  3. Успешная регистрация
  4. Успешная регистрация

Ну и опять же, помним про «кратко, но емко», если видим копипасту, избавляемся от нее.  Пишем один результат на все пункты проверки:



См также:
Что такое тест-кейс и как его писать — подробнее о тест-кейсах
Вложил в тест-кейс аттач? Поясни его! — про аттач в результате кейса

PS — это выдержка из моей книги для начинающих тестировщиков, написана в помощь студентам моей школы для тестировщиков

1 комментарий:

  1. ГОСТ 34.603 вам в помощь. Только экземпляр хороший найдите

    ОтветитьУдалить