Skip to content

Playwright e2e Production Tests #267

Playwright e2e Production Tests

Playwright e2e Production Tests #267

name: Playwright e2e Production Tests
on:
workflow_dispatch:
schedule:
- cron: '0 12 * * *'
defaults:
run:
working-directory: ./playwright
jobs:
build:
timeout-minutes: 10
runs-on: ubuntu-latest
env:
HEALTH_URL: https://www.noteapp.co.uk/api/health
steps:
- uses: actions/checkout@v4
- name: Use Node.js 20.x
uses: actions/setup-node@v4
with:
node-version: 20.x
- name: Wake backend
run: curl -v --connect-timeout 120 -m 180 ${HEALTH_URL}
- name: Install Playwright
run: |
yarn
yarn playwright install chromium
- name: Run Playwright Tests against chromium
run: |
yarn test:production
- name: Upload Playwright Report to Artifacts
uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-report
path: ./playwright/playwright-report/
retention-days: 30
- name: Set up JDK for Allure
uses: actions/setup-java@v3
with:
distribution: zulu
java-version: 17
- name: Load test report history
uses: actions/checkout@v4
if: always()
continue-on-error: true
with:
ref: gh-pages
path: gh-pages
- name: Build test report
uses: simple-elf/[email protected]
if: always()
with:
gh_pages: gh-pages
allure_history: allure-history
allure_results: ./playwright/allure-results
- name: Publish test report
uses: peaceiris/actions-gh-pages@v4
if: always()
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: gh-pages
publish_dir: allure-history