четверг, 1 ноября 2012 г.

Нужно ли тестировать кнопку "Отмена"?

Когда-то, давным давно... Тестировала я маленький проектик А. У меня было всего лишь 1-2 разработчика, поэтому я зачастую скучала. И в итоге ушла помогать тестировать проект Б, самый большой в нашей компании. Но оставаясь единственным тестировщиком А.

До того, как таки отпустить меня на проект Б (ох уж мне эта ревность Smile :)), начальник сначала решил придумать мне задач. В частности, расписать тест-кейсы в TestComplete. Все тест-кейсы. Вообще. От слова "совсем". Я начала писать, ему не понравилось. Не подробно. Тогда то он и дал мне ссылку на статью Топ 13 ошибок тестировщика. За что ему огромное спасибо, вот ведь, до сих пор помню...

Так вот, прочитала я статью, где-то устыдилась, где-то вдохновилась... Да и делать все равно было нечего, пока разработчики на тестовую не выложатся... Расписала я тесты, прям загляденье!

Например, делаем мы действие и у нас стандартное такое окошко "А вы уверены, что этого хотите?". Даже на такое окошко я расписывала тесты подробно:
  • Подтвердить действие, нажав на кнопку "Ок".
  • Отклонить действие, нажав на кнопку "Отмена".
  • Отменить действие, нажав на крестик в правом верхнем углу.
Очень подробненько все. А в итоге ради кого я описание заполняла? Самой мне было достаточно прочитать названия тест-кейсов, чтобы понять, что надо проверить. А нового тестировщика так и не появилось на проекте до его закрытия.

Но к чему это я? Ах да, вот как вы думаете - часто ли мы выполняем прям все-все-все тест-кейсы? Разумеется, нечасто. Приоритеты дают о себе знать. И обычно мы не уделяем внимание тестам на отмену. Это не значит, что мы не пишем негативные тесты, нет. Просто они другие - на кнопку "ок"...

Например, у нас есть поле с индексом, обрабатывает только 6 цифр. И понеслась:
  • Позитивный - 6 цифр, сохраняем;
  • Негативный - 5 цифр, сохраняем;
  • Негативный - 7 цифр, сохраняем;
  • Негативный - пустая строка, сохраняем;
  • Негативный - символы, сохраняем;
  • Негативный - ...
Продолжать можно долго, но суть в том, что наши негативные тесты основываются на нажимании кнопки "ок", пренебрегая условием из ТЗ. А часто ли мы тестируем позитивный тест на кнопку "отмена" или крестик в правом верхнем углу? Нет? А надо бы...


Общалась вчера с Ириной Винокуровой, одной активной тестировщицей, которая уже начинает покорять просторы интернета своим блогом и выступлениями Smile :)

И она с горящими глазами расписывала мне, как развалила один проект. Задала настройку, нажала "Сохранить" - хрен там. Ну ок, нажимает "Отмена"... А отмена не работает! И мало того что не работает, может и все разломать.

А теперь представьте, что это нашел пользователь... Вообще, вспоминая проекты SharePoint, я уже видела что-то подобное. И не только с кнопкой "Отмена". Можно, например, сидеть, сидеть на страничке, а потом бац - и "назад" в браузере надать. А тебе БАЦ - и 400 Bad Request о_О

А ведь замыленность галаза заключается в том, что ты свой проект уже "видеть не можешь", не знаешь, куда еще тыкнуть, чтобы разломать. И о таких мелочах, как кнопка "назад" в браузере или какая-то там жалкая "отмена", даже не вспоминаешь... Надо же функционально разломать! А такие простенькие тесты подождут... Негодования Заказчика Smile :)

Не забывайте о "мелочах", иногда и они нас удивляют...

7 комментариев:

  1. Была в Калининграде еще. Пришла новая девочка. Я ей рассказываю про проект, она логинится и, так как меня отвлекли, нажимает отмену входа - меня хочет подождать. Каааак ругнулось приложение, да как упало.
    При этом его смотрели уже стопятьсот раз, оно уже в промышленной эксплуатации 4 месяца, а по кнопке "отмена" падает. От тогда как стыдно ВСЕМ было.

    ОтветитьУдалить
  2. Да, это очень классный кейс который нужно обязательно пройти.
    Конечно же, «отмена» – это может быть и не самый частый кейс, но иногда, такой месадж-бокс может просто «спасти жизнь». Я думаю каждый может вспомнить тот случай, когда чуть не удалил важный файл, который был в единственном экземпляре и лишь кнопка «отмена» была той спасательной соломинкой.
    Я сам сталкивался с ситуациями, когда диалог с «Отменой» показывался, но не обрабатывался корректно.
    Такое бывает с Виндовыми диалогами типа «Открыть»/ «Сохранить как», когда жмешь отмену – а приложение продолжает открывать или сохранять в файл с «пустым» именем.
    А при удалении элемента, разработчик может вставить диалог «OK/Cancel» – а вот тот самый Cancel не обработать, так что Отмена не спасет от удаления.

    ОтветитьУдалить
    Ответы
    1. >> Я думаю каждый может вспомнить тот случай, когда чуть не удалил важный файл, который был в единственном экземпляре и лишь кнопка «отмена» была той спасательной соломинкой

      О да, Дим! Точно! :)

      Удалить
  3. 404 - это код для Not Found, а у Bad Request - 400...

    ОтветитьУдалить
  4. Буквально вчера нашла такой баг - кнопка Сохранить изменения ругалась - мол такое нельзя сохранять, а кнопка Отмена вместо того,чтобы вообще все отменить,покорно сохраняла :)

    ОтветитьУдалить
    Ответы
    1. А еще есть кнопка back, про нее тоже надо помнить ;)

      Удалить