Skip to content

Latest commit

 

History

History
34 lines (24 loc) · 3.52 KB

ideas.md

File metadata and controls

34 lines (24 loc) · 3.52 KB

По времени

На всё ушло примерно 4:30 1 час - чтение условий, инициализация проекта, подумать как всё сделать 1 часа - поичтать про тестраннеры, углубиться в плейврайт тестраннер 2 часа - написание фреймворка вместе с написанием теста

Config:

Использовал пакет config как один из самых простых и популярных решений В host урл с «data.» ибо на данном этапе другого урл нету, когда появятся варианты subdomains они уйдут в отдельную строку

Тест-раннер:

Решил использовать playwright-test: С одной стороны - сейчас это дефолтный раннер для плейврайта, даже информацию о возможности запуска через сторонние раннеры они из документации убрали. Следуем методологии KISS - если можно проще, не делаем сложнее :) С другой стороны - тест раннер обладает интересными функционалом, поддерживает всё что нам надо и чуток больше (например fixtures). Запускать с его помощью можно не только playwright тесты - при необходимости в фреймворк получится добавить и api тесты. Из минусов - скудный набор ассертов для не фронтовых тестов, но решается добавлением, либо своих либо из mocha

Найденные ошибки:

Ошибка в описании задачи - c «E-mail» в поле email не работает, надо подобие нормального емейла В tooltip-error-allert используется аттрибут data-testid="tooltip-desktop-error-alert» вмето data-qa

По коду:

Можно было бы разделить каждый экран/iframe widget на отдельные классы но тогда это не будет по KISS, пока нету необходимости - не стоит усложнять

при передаче данных не стал делать через деструктинг ({name, lastName}) - что бы можно было за счет редактора видеть что не хватает каких-то данных переданных в функцию, в тайпскрипте бы сделал бы красивее :)

Так же еще бы вынес кнопки или в одтельный файл либо в consturctor, но на данный момент оставил в функциях действий

Все тестовые данные я бы тоже вынес в отдельный файл, имя, карты, и прочее, рядом с конфигом

Бонус-Трек: т.к. тестраннер и так умеет запускать тесты в парралелль - дополнительно ничего не добавлял

Отчеты: Добавил возможность allure отчета, но по дефолту используется вывод в консоль + html отчет по окончанию всех тестов