Читаем QA Engineer полностью

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

Пример

Рассмотрим систему управления доступом, которая позволяет попадать в здание при успешном сканировании допустимого идентификатора (сканирование ID карты или ввода кода доступа) и блокирует вход при неудачной попытке. Система может находиться в различных состояниях, в зависимости от операций пользователя и её внутренних событий.

Состояния:

— Ожидание: система находится в покое и ожидает от пользователя ввода ID карты.

— Аутентификация: система получила ID и проверяет его на предмет подлинности и достаточности уровня прав доступа.

— Доступ разрешен: система закончила проверку ID и разрешает пользователю вход.

— Доступ запрещен: система закончила проверку ID и отказала пользователю в возможности входа.

— Блокировка: система временно заблокирована после трёх подряд неудачных попыток ввода.

Визуализация состояний ниже

Чтобы система начала менять свои состояния, необходимо совершать с ней определенные действия (переходы), либо же она должна выполнять их сама.

Переходы:

— Ожидание —> Аутентификация: при вводе ID и отправке его в систему.

— Аутентификация —> Доступ разрешён: если ID успешно прошел проверку системой.

— Аутентификация —> Доступ запрещён: если ID прошел проверку системой неуспешно.

— Доступ разрешён —> Ожидание: после успешного входа.

— Доступ запрещён —> Ожидание: после отклонения доступа.

— Доступ запрещён —> Блокировка: если число неудачных попыток превышает допустимый лимит.

— Блокировка —> Ожидание: после истечения времени блокировки.

Визуализация состояний с переходами ниже

Тестовые случаи, которые можно создать:

Тест ожидания ввода:

Тест использования допустимого ID:

Тест использования недопустимого ID:

Тест неудачных попыток ввода:

Тест разблокировки системы:

Тест повторного доступа после успешного входа:

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

<p>4.9. Ошибка, дефект и сбой</p>

Обычно любое зарегистрированное несоответствие между ожидаемым и фактическим поведением системы называют “Баг”. То есть, место в коде, которое работает некорректно, называют “Баг” и сам Bug Report называют “Баг”. Качественное понимание того, как возникают “Баги” и где их можно ожидать, помогает находить эти самые несоответствия более качественно.

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

Примеры

— Программист случайно использует при сравнении значений оператор «>» вместо «>=», что приводит к непредвиденным результатам операции.

— Системный аналитик неверно понял требование заказчика к системе и создал такой алгоритм расчета цены на товар в магазине, работа которого приводит к погрешностям в вычислениях.

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

Примеры

— Функция калькулятора, которая должна складывать два числа, выдаёт неверный результат при сложении больших чисел из — за ошибки в коде.

— При заполнении формы регистрации, в систему не отправляются данные домашнего адреса пользователя, хотя для него все выглядит так, будто данные отправлены полностью.

Сбой — это событие, при котором система не выполняет одну или несколько заявленных функций. Сбой происходит, когда программное обеспечение перестает правильно функционировать из — за одного или нескольких дефектов. Сбои видны конечным пользователям и могут привести к потере данных, нарушению работы системы или другим критическим последствиям.

Примеры

— Веб — сайт выдает ошибку сервера и перестает обрабатывать запросы пользователей из — за дефекта, влияющего на этот процесс.

Перейти на страницу:

Похожие книги

«1С. Управление небольшой фирмой 8.2». Управленческий учет в малом бизнесе
«1С. Управление небольшой фирмой 8.2». Управленческий учет в малом бизнесе

Описана новейшая версия программы «1С: Управление небольшой фирмой 8.2», которая сочетает в себе многофункциональность, простоту в освоении и достоинства современного интерфейса программ фирмы «1С». В этой конфигурации есть все необходимое для автоматизации оперативного и управленческого учета на предприятии малого бизнеса. В то же время программа не перегружена средствами учета, что очень важно для формирования оптимального соотношения между стоимостью и функциональностью.Изложение материала в книге построено с использованием большого количества примеров, часть из которых разобраны очень подробно. Надеемся, что эта книга станет надежным путеводителем для тех пользователей, которые только начинают знакомство с программой, а более опытные пользователи также найдут для себя важную и полезную информацию.Издание подготовлено при содействии компании «1С: Франчайзинг. БИЗНЕС-КЛУБ» – официального партнера фирмы «1С».

Николай Викторович Селищев

Маркетинг, PR
111 способов повысить продажи без увеличения затрат
111 способов повысить продажи без увеличения затрат

В любом бизнесе всегда можно сделать что-то еще для увеличения продаж, ведь ни одна компания не использует все возможные и подходящие ее специфике методы маркетинга. Например, средний магазин «Walmart» (крупнейшая сеть дисконт-супермаркетов в мире) использует порядка 500 способов (ошибки в нолях нет) привлечения клиентов и увеличения продаж. А чем вы хуже? «Под ногами» лежит больше денег, чем бизнес зарабатывает в данный момент. Нужно только наклониться, чтобы их поднять. Продажи компании можно легко увеличить относительно простыми и малозатратными или вовсе бесплатными способами. Именно такие способы приводятся в этой книге. Читайте и внедряйте новые для вас методы, иначе это сделают ваши конкуренты, а вы будете в роли догоняющих!

Айнур Сафин

Маркетинг, PR / Маркетинг, PR, реклама / Финансы и бизнес