Найти тему

Техники тест-дизайна. Граничные значения. Часть 2.

Оглавление

Продолжаем изучать Техники тест-дизайна. В прошлой статье мы изучили Классы эквивалентности.

При работе с линейными классами эквивалентности, представляющими собой интервалы значений, тестировщик должен чётко определить границы этих интервалов, чтобы правильно классифицировать значения.

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

Значение, находящееся на границе между двумя классами эквивалентности, называется граничным.

Техника анализа граничных значений — проверка поведения продукта на крайних (граничных) значениях входных данных.

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

К примеру, если в требованиях к сайту указано, что возраст пользователя должен быть больше 15 лет, тестировщик должен уточнить у аналитика, относится ли значение 15 лет к допустимому диапазону. После этого необходимо проверить, действительно ли это условие реализовано в приложении, поскольку разработчик мог неверно понять требования и установить ограничение в 16 лет («>15» вместо «>=15»).

🟢Как можно выделить граничные значения:

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

🟢Давайте разберём на примере.

Подсчёт комиссии при отмене бронирования отеля производится в зависимости от времени отмены на следующих условиях:

  • за 5 суток до заселения комиссия составляет 0% от стоимости;
  • меньше 5 суток, но больше 24 часов — 50% от стоимости;
  • меньше 24 часов, но до заезда — 75% от стоимости;
  • после времени заезда — 100% от стоимости брони

Теперь нужно определиться с проверками.

Определяем граничные классы эквивалентности:

  • 1 класс эквивалентности — 30 - 5 суток
  • 2 класс эквивалентности — 4 суток - 24 часов
  • 3 класс эквивалентности — 23 часа - 0 часов

Определяем, к какому классу относится каждая граница:

  • 1 класс эквивалентности — 5;
  • 2 класс эквивалентности — 24 часа;
  • 3 класс эквивалентности — 0 часов;

Для каждой границы выделяем три значения:

{6, 5, 4}, {25 часов, 24 часа, 23 часа}, {1 час, 0 часов, время после бронирования},

Тут ещё нужно уточнить у аналитиков до какой степени точности мы проводим границы - минуты, секунды. К примеру 24 часа и 1 минута, будет относится к какой комиссии? Если по часам, то комиссия 75%, а если по минутам, то уже 50% - а это большой разбег.

Если поминутно, то тесты должны проверить:

  1. Отмену брони за 4 дня 23 часа 59 минут, отмену брони ровно за 5 суток 00 минут, отмену брони за 5 суток и 01 минуту.
  2. Отмену брони за 23 часа 59 минут, за 24 часа 00 минут, за 24 часа 01 минуту.
  3. Отмену брони за 1 минуту, за 0 минут, через 1 минуту после.
  4. Также как тестировщик нужно проверить отправку на сервер через API негативных проверок - { -36, 1001, FRED, %$#@}
-2

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

Если у вас есть вопросы или вы просто хотите стать частью команды тестировщиков, то переходи в ТГ канал, где можем пообщаться с единомышленниками и найти много интересных и полезных знаний!Также если вам нужна индивидуальная консультация, менторство и помощь в создании проекта пишите в ТГ канал!

Обучение тестированию

Наука
7 млн интересуются