name: Playwright E2E Tests on: push: branches: [main, dev, dev-angular-19] pull_request: branches: [main, dev, dev-angular-19] jobs: playwright: name: Run Playwright Tests runs-on: ubuntu-latest timeout-minutes: 30 steps: - name: Checkout code uses: actions/checkout@v4 - name: Use Node.js 22x uses: actions/setup-node@v4 with: node-version: '22.12.0' cache: 'npm' - name: Install dependencies run: npm ci - name: Install Playwright browsers run: npx playwright install --with-deps chromium - name: Build application run: npm run build - name: Run Playwright tests run: npx playwright test --reporter=html,github env: CI: true - name: Upload Playwright report uses: actions/upload-artifact@v4 if: always() with: name: playwright-report path: playwright-report/ retention-days: 7 - name: Upload test results uses: actions/upload-artifact@v4 if: failure() with: name: test-results path: test-results/ retention-days: 7