Запуск тестов selenium/standalone-chrome gitlab-ci
Имеется во такой стейдж
test-dev:
stage: test
script:
- mkdir -p tests/js/screens/diffs
- docker run --rm -d --name=browser_$CI_JOB_ID -p 4444:4444 -p 7900:7900 --shm-size="2g" selenium/standalone-chrome
- npx mocha tests/js/screenshots-* --timeout 50000
- npx playwright test tests/js/pw_*
- php artisan test
- docker stop browser_$CI_JOB_ID
artifacts:
when: always
name: $CI_COMMIT_SHA
untracked: true
paths:
- tests/js/screens
- tests/js/report
cache:
when: always
paths:
- storage/framework
- vendor/ #composer packages
- node_modules
- public
key:
files:
- vendor/ #composer packages
- composer.lock
tags:
- test_new_runner
Тот же стейдж но в процессе переработки
test-dev:
# allow_failure: true
stage: test
image: selenium/standalone-chrome
script:
- mkdir -p tests/js/screens/diffs
# - docker run --rm -d --name=browser_$CI_JOB_ID -p 4444:4444 -p 7900:7900 --shm-size="2g" selenium/standalone-chrome
- npx mocha tests/js/screenshots-* --timeout 50000
- npx playwright test tests/js/pw_*
- php artisan test
# - docker stop browser_$CI_JOB_ID
artifacts:
when: always
name: $CI_COMMIT_SHA
untracked: true
paths:
- tests/js/screens
- tests/js/report
cache:
when: always
paths:
- storage/framework
- vendor/ #composer packages
- node_modules
- public
key:
files:
- vendor/ #composer packages
- composer.lock
tags:
- test_new_runner
Хочу избавиться от запуска контейнера так как это иногда вызывает ошибку, но не могу понять как это реализовать при использовании image в нем нет npx
Ответы (1 шт):
Автор решения: Ярослав Юров
→ Ссылка
Вы можете запустить selenium/standalone-chrome как сервис, а основное изображение будет node, например:
test-dev:
image: node:16.16
services:
- name: selenium/standalone-chrome
alias: chrome
stage: test
script:
...
И уже дальше прогонять свои тесты, через удаленный webdriver