Andrey Ivanov - Quality First (QA): post #37 — TG.ME

Сегодня хотел рассказать об использовании такой крутой штуки, как Попарное тестирование, оно же Pairwise testing или All-pairs testing.

О таком подходе я узнал совершенно случайно. Передо мной стояла задача протестировать добавление и оплату кастомных продуктов для интернет магазина с кучей настроек самого продукта, вроде цвета, размера, количества, страны производства, с различными дополнительными опциями или без них.
Когда я начал писать тест-кейсы, то уже через пару часов понял, что вариантов выходит слишком много и пройти все руками будет крайне трудозатратно. Поэтому я полез в гугл искать как это правильно делать. И о чудо! оказывается при использовании данного метода можно сделать не 400 прогонов, а всего около 30. Для меня это было супер важно.

Дальше я полез составлять эти пары вручную, но и тут понял, что мозг подзакипает, а пары начинают повторяться и противоречить методу. Снова гугол и снова готовый ответ - софт для составления пар. Тогда еще не было кучи онлайн приблуд для этого, нужно было скачать архивчик с файлом запуска из командой строки и примеров excel для входных данных. 5 минут разобраться и вуаля - у меня готовый набор данных, которые по сути закрывают все нужные комбинации.
По итогу вместо 400+ тестов, один тест и файлик с данными. Ну красота же!

Вообще в чем суть данного метода?
он строится на теории, что проблема(бага) в подавляющем большинстве случаев возникает при комбинации каких-либо двух параметров, которые не умеют правильно взаимодействовать друг с другом и ломают логику приложения. ISTQB определяет попарное тестирование как технику тест-дизайна методом черного ящика, при которой тест-кейсы создаются таким образом, чтобы выполнить все возможные отдельные комбинации каждой пары входных параметров. То есть для полноценной проверки приложения с функционалом множественных параметром нужно проверить все возможно пары во всех возможных комбинациях. Также учитывается, что если параметров не 2, а скажем 6, то каждый тест будет проверять минимум 3 разных пары, а в идеале больше даже больше. Таким образом можно поймать тест, в котором ломается приложение и останется найти только нужную пару проводя уже более атомарные проверки по параметрам.

Опять же для примера:
У меня есть например 6 разных параметром для продукта, для каждого из которых есть 2 опции.
Значит общее количество тестов при полной переборке будет равняться 2^6 (два в степени 6), то есть 64.
Когда как при использовании попарного тестирования кейсов будет значительно меньше - всего 14. То есть в 4.5 раза меньше тест-кейсов.
И чем больше у вас параметров и значений, тем более эффективен данный метод.
Для примера использовал онлайн тул https://pairwise.teremokgames.com/. Таких тулов очень много, это просто первый попавшийся.
Файлик скину в комментарии для примера.

Вообщем все советую ознакомиться и попробовать!
Всем добра!
Teremokgames
Pairwise Online Tool
👍4🔥1🤝1
September 30, 2024 263 4 1