Skip to content

Merge pull request #1 from larelgit/improvements #13

Merge pull request #1 from larelgit/improvements

Merge pull request #1 from larelgit/improvements #13

Workflow file for this run

name: e2e-tests
on:
push:
pull_request:
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
browser: [chromium, firefox, webkit]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
cache: pip
- name: Install dependencies
run: pip install -r requirements.txt
- name: Install browser
run: playwright install --with-deps ${{ matrix.browser }}
# -n 4 runs tests in parallel (data isolation in conftest.py supports it).
# Capped at 4 rather than `auto`: the demo site sheds load under heavy
# concurrency, so more workers means more flaky 503s, not more speed.
# --reruns guards against that intermittent load-shedding; genuine
# regressions still fail consistently and turn the badge red.
- name: Run e2e tests
run: >
pytest --browser ${{ matrix.browser }}
-n 4
--html=report.html --self-contained-html
--tracing retain-on-failure --reruns 2 --reruns-delay 30
- name: Upload report and failure artifacts
uses: actions/upload-artifact@v4
if: always()
with:
name: test-report-${{ matrix.browser }}
path: |
report.html
test-results/