Проект автотестов
Используются Playwright + Jest
В папке tests находятся автотесты. (Или отдельно, должны называться *.test.js)
в папке models находятся модели по паттерну PageObject.
Что нужно для запуска:
node (тестировал только на 15+, но должно и на 12+ работать)
Шаги запуска:
- Устанавливаем node
- npm install - устанавливаем зависимости
- npm test - запускаем все тесты
В конце получаем отчёт с общим количеством, прошедших и непрошедших тестов, время выполнения.
Чтобы запустить отдельный тест:
npm test -- loginPage.js
Настройки Jest:
В файле jest.config.js:
jest.setTimeout(50000) - для избегания проблем с асинхронным кодом
В файле package.json:
"test": "jest -w=1 --detectOpenHandles --forceExit"
jest - указываем наш тест раннер
-w=1 - количество потоков. Может задать фикс количествои или в %, например, -w=50%
--detectOpenHandles и --forceExit - для избегания проблем с асинхронным кодом
CI
github actions
.github\workflows\nodejs.yml - пример запуска тестов в Github Actions
docker
docker run -it --rm --ipc=host playwright_test:v1
В интерективном режиме: npm test
1