Skip to content

Browser Tests

Browser Tests #950

Workflow file for this run

name: Browser Tests
on:
push:
branches: [master]
pull_request:
branches: [master]
schedule:
- cron: '0 0 * * *' # Runs every day at midnight
jobs:
browser-tests:
timeout-minutes: 30
runs-on: ubuntu-latest
container:
image: selenium/standalone-chrome:nightly
options: --user root # reintroducing a GH Actions default expectation
## https://docs.github.com/en/actions/creating-actions/dockerfile-support-for-github-actions#user
## the Selenium image is configured to not run as root, so we have to undo some of it
env:
HOME: /root # Firefox complains otherwise
steps:
- name: Put unstable chrome where playwright would look for it
run: mv /opt/google/chrome /opt/google/chrome-unstable
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: Provide yarn # yarn is missing in the Selenium image
run: corepack enable
- name: Install dependencies
run: yarn install
- name: Build artifacts
run: yarn build
- name: Install browser test dependencies
working-directory: browser-test
run: npm ci --ignore-scripts
- name: Install Playwright Browsers
working-directory: browser-test
run: npx playwright install --with-deps
- name: Run Playwright tests
working-directory: browser-test
run: npx playwright test
- uses: actions/upload-artifact@v3
if: always()
with:
name: browser-test-report
path: browser-test/playwright-report/
retention-days: 30