Автоматизаторы не любят готовые решения — им кажется, что в них чего-то не хватает. Во многих случаях это действительно так, и тогда они принимаются писать своё.
В докладе покажу конкретную реализацию на стеке Python + pytest/behave и как она ложится на общую схему gTAA (Generic Test Automation Architecture) из ISTQB.
Возьмём E2E-тест (API + UI) и разложим его реализацию до основания с примерами кода.
Спроектированная архитектура позволяет решать прикладные задачи:
- Залогировать ответы всех запросов;
- Добавить в user-agent номер теста и запуска;
- Поменять библиотеку для отправки запросов requests -> httpx;
- Поменять UI-фреймворк, не переписывая весь проект.
Также на практике затронем основные принципы: композицию / наследование, связность кода, инверсию зависимостей и т.д. Примеры кода будут на Python, но все принципы универсальны и легко читаются.
Доклад будет полезен независимо от вашего стека. Позволит увидеть картину сверху и потенциально найти новые идеи для вашего проекта.