2023-03-16 00:09:58 +00:00
|
|
|
name: Run E2E tests
|
|
|
|
description: Runs the WooCommerce Core E2E tests and generates Allure report.
|
|
|
|
permissions: {}
|
|
|
|
|
|
|
|
inputs:
|
|
|
|
report-name:
|
|
|
|
description: Name of Allure report to be generated.
|
|
|
|
required: true
|
2023-03-16 00:52:33 +00:00
|
|
|
tests:
|
|
|
|
description: Specific tests to run, separated by single whitespace. See https://playwright.dev/docs/test-cli
|
2023-03-16 05:38:29 +00:00
|
|
|
playwright-config:
|
|
|
|
description: The Playwright configuration file to use.
|
|
|
|
default: playwright.config.js
|
2023-03-16 00:09:58 +00:00
|
|
|
|
2023-05-11 21:29:12 +00:00
|
|
|
outputs:
|
|
|
|
result:
|
|
|
|
description: Whether the test passed or failed.
|
|
|
|
value: ${{ steps.run-e2e-tests.conclusion }}
|
|
|
|
|
2023-03-16 00:09:58 +00:00
|
|
|
runs:
|
|
|
|
using: composite
|
|
|
|
steps:
|
|
|
|
- name: Download and install Chromium browser.
|
|
|
|
working-directory: plugins/woocommerce
|
|
|
|
shell: bash
|
|
|
|
run: pnpm exec playwright install chromium
|
|
|
|
|
|
|
|
- name: Run E2E tests.
|
|
|
|
id: run-e2e-tests
|
|
|
|
env:
|
|
|
|
FORCE_COLOR: 1
|
|
|
|
USE_WP_ENV: 1
|
|
|
|
working-directory: plugins/woocommerce
|
|
|
|
shell: bash
|
2023-03-16 00:52:33 +00:00
|
|
|
run: |
|
|
|
|
pnpm exec playwright test \
|
2023-03-16 05:38:29 +00:00
|
|
|
--config=tests/e2e-pw/${{ inputs.playwright-config }} \
|
2023-03-16 00:52:33 +00:00
|
|
|
${{ inputs.tests }}
|
2023-03-16 00:09:58 +00:00
|
|
|
|
|
|
|
- name: Generate Test report.
|
|
|
|
if: success() || ( failure() && steps.run-e2e-tests.conclusion == 'failure' )
|
|
|
|
working-directory: plugins/woocommerce
|
|
|
|
shell: bash
|
|
|
|
run: pnpm exec allure generate --clean ${{ env.ALLURE_RESULTS_DIR }} --output ${{ env.ALLURE_REPORT_DIR }}
|
|
|
|
|
|
|
|
- name: Archive test report
|
|
|
|
if: success() || ( failure() && steps.run-e2e-tests.conclusion == 'failure' )
|
|
|
|
uses: actions/upload-artifact@v3
|
|
|
|
with:
|
|
|
|
name: ${{ inputs.report-name }}
|
|
|
|
path: |
|
|
|
|
${{ env.ALLURE_RESULTS_DIR }}
|
|
|
|
${{ env.ALLURE_REPORT_DIR }}
|
|
|
|
retention-days: 20
|