Skip to content

Playwright Tests

Playwright Tests #3041

Workflow file for this run

name: Playwright Tests
on:
deployment_status
jobs:
visual-regression-tests:
name: Visual Regression Tests
timeout-minutes: 30
runs-on: ubuntu-latest
if: ${{ github.event.deployment_status.state == 'success' && contains(github.event.deployment_status.target_url, 'storybook') }}
steps:
- name: Checkout code
uses: actions/checkout@main
- uses: pnpm/action-setup@v2
- name: Use Node.js
uses: actions/setup-node@main
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Install Playwright Browsers
run: |
cd packages/functional
npx playwright install chromium
- name: Run Playwright tests
env:
PLAYWRIGHT_TEST_BASE_URL: ${{ github.event.deployment_status.target_url }}
run: |
cd packages/functional
npx playwright test tests/visual-regression/reactant/components/ --project=tests-chromium
- uses: actions/upload-artifact@v3
if: failure()
with:
name: playwright-report
path: packages/functional/playwright-report/
retention-days: 30
ui-tests:
name: Playwright UI Tests
timeout-minutes: 30
runs-on: ubuntu-latest
if: ${{ github.event.deployment_status.state == 'success' && ! contains(github.event.deployment_status.target_url, 'storybook') }}
steps:
- name: Checkout code
uses: actions/checkout@main
- uses: pnpm/action-setup@v2
- name: Use Node.js
uses: actions/setup-node@main
with:
node-version-file: '.nvmrc'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Install Playwright Browsers
run: |
cd packages/functional
npx playwright install chromium
- name: Run Playwright tests
env:
PLAYWRIGHT_TEST_BASE_URL: ${{ github.event.deployment_status.target_url }}
run: |
cd packages/functional
npx playwright test tests/ui/ --project=tests-chromium
- uses: actions/upload-artifact@v3
if: failure()
with:
name: playwright-report
path: packages/functional/playwright-report/
retention-days: 30