пятница, 7 мая 2021 г.

Тур чашки кофе

Входит в «Туры по развлекательным районам», Tours Through the Entertainment District

Вольный перевод статьи Уиттакера из книги Exploratory Software testing. Туры помогают искать баги, взглянув на систему по-новому. Тестировщик выбирает тур и следует его цели, не отвлекаясь ни на что другое. Словно турист в незнакомом городе, составил план и пошел!

Тур чашки кофе — это когда ты работал-работал с приложением, а потом решил немного отдохнуть. Пошел и выпил кофе, например. А потом вернулся и решил продолжить работу.

Пора отдохнуть!

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


Откладывать действие можно двумя способами:

  1. Оставили приложение / вкладку браузера открытыми и отошли
  2. Свернули приложение (приняли звонок, ответили на смс / в мессенджере, просто пошли в игрушки поиграть, потому что ждать очень долго было...) или сменили вкладку браузера
Тур помогает выявить баги:
  1. Функциональные
  2. UX (удобства использования)


Функциональные

Если вы пользуетесь госуслугами / mos.ru / да любым интернет-банком, вы наверняка сталкивались с такой ситуацией:

  1. Открыл сайт, авторизовался
  2. Отошел по делам (курьера встретить / коллега отвлек / чай остыл)
  3. Вернулся, выбрал какую-то опцию с главной страницы → а тебе снова предлагают залогиниться.
Это не баг, а специально созданное разработчиком поведение. Он может устанавливать время сессии — сколько времени подождать отсуствие человека, а потом выкинуть его из системы. Делается это ради вашей же безопасности, а то так отойдете от компьютера, вернетесь, а уже все деньги на чужой счет перевели...

Другое дело, что после повторной авторизации вы должны снова вернуться к тому месту, на котором остановились. И вот именно это и нужно проверять!

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

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



Баги UX

Допустим, что мы выполняем какое-то действие в несколько этапов:
  1. Заполняем анкету на 10 страниц
  2. Оформляем заказ в магазине, который тоже почему-то растянули на несколько страниц «далее-далее-далее»
  3. ...
Потом мы куда-то отлучились и снова вернулись к экрану, уже полностью в новых мыслях. Ой, а тут же вкладочка открыта какая-то... Что же я делал?

Сможет ли приложение подсказать вам, где вы находитесь и зачем? Если да, то с юзабилити всё в порядке. Но иногда бывает просто «Вопрос 6». Что за вопрос? Кому он нужен? И если человек уходил надолго — совещание рабочее, например, нужно напрягать мозги и вспоминать, чем это он тут занимался до этого.

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


Цель тура: отлучиться минут на 5, оставив приложение в подвешенном состоянии в «активной» фазе:
  • Начали вводить данные, не закончили → потом вернулись и нажали «сохранить»
  • Начали оформление покупки, не закончили → потом вернулись и попробовали оплатить
  • Включили видео, остановили и ушли → потом пытаемся продолжить
  • ...
Если одна вкладка влияет на другую, система кеширует ваши данные. И вот как раз протухание этого кеша приводит к багам. Так что наша задача — найти кешируемое место, заполнить его, а потом куда-то отойти.


В Дадате два основных функционала — стандартизация данных и подсказки.

Стандартизация

На главной странице авторизованного пользователя можно выбрать файл и начать его обработку:



Как только мы начали обработку, мы видим, что может вручную редактировать тип столбцов:

Ага! Это как раз то, что мы ищем. Ведь если я вручную изменю тип колонки, система должна запомнить мой выбор. Надолго ли?

  • Меняем все типы
  • Уходим пить чай / кофе
  • Возвращаемся и пытаемся продолжить обработку.
Далее мы видим экран предварительной обработки результатов и её стоимость. Если денег не хватает, то кнопка «Далее» првращается в «Пополнить баланс и продолжить». Ооооо, работа с деньгами! Это вообще милое дело для нашего тура:
  • Выбираем пополнение баланса
  • Вводим данные карты
  • Сваливаем
Дальше смотрим негативный сценарий двухфакторной авторизации:
  • Вводим данные карты
  • Дожидаемся окна от Банка «мы прислали вам пароль в смс, введите его»
  • Сваливаем
Что будет, если мы введем пароль слишком поздно? Он уже протухнет, и это не баг. Это наша защита. Но что будет с системой? Вернется ли она туда, откуда мы перешли к пополнению баланса? И вспомнит ли, что мы сделали на предыдущем этапе (изменили типы данных в колонках)?

Тут надо отметить, что вариант «мы выкинули вас на главную страницу и делайте всё снова» тоже рабочий. По крайней мере, мы не теряем деньги из-за отлучки. Но, если форма сильно сложнее, в 10 этапов, а не 2-4, то очень жестоко заставлять человека всё повторять. Так что смотрим по ситуации.


Подсказки

В подсказках вы вводите букву, получаете подсказки по ней. Вводите вторую, получаете подсказку уже по обеим буквам. И так далее.


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



Исходно в книге этот тур входит в тур полуночника, упоминается в самом конце. Но он вполне заслуживает отдельной статьи и пояснений, чем может пригодится. И баги он тоже ловит! Вот некоторые примеры из жизни:





PS: Статья написана в помощь студентам моих курсов по тестированию и уже доступна на Testbase, чтобы не потерялась ссылка.

Комментариев нет:

Отправить комментарий