-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chrome only #99
base: develop
Are you sure you want to change the base?
chrome only #99
Changes from 16 commits
23392e7
788b7de
6afdb30
92d0675
56a021a
9efcccb
0a5ea5b
78bfc5c
30039c4
d805614
255aa4f
85fa341
f7e1468
e26df71
72873fe
41c2361
2b21959
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -69,6 +69,9 @@ jobs: | |||||||||||||||||||||||||||||||||||||||||||||
tests: | ||||||||||||||||||||||||||||||||||||||||||||||
name: e2e_api tests | ||||||||||||||||||||||||||||||||||||||||||||||
runs-on: ubuntu-latest | ||||||||||||||||||||||||||||||||||||||||||||||
# container: | ||||||||||||||||||||||||||||||||||||||||||||||
# image: mcr.microsoft.com/playwright:v1.49.1-noble | ||||||||||||||||||||||||||||||||||||||||||||||
# options: --user 1001 | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
steps: | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Checkout testing repo | ||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -81,14 +84,14 @@ jobs: | |||||||||||||||||||||||||||||||||||||||||||||
node-version: 20 | ||||||||||||||||||||||||||||||||||||||||||||||
cache: npm | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- name: Composer install and build (Dokan-lite) | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
composer i --no-dev -o || composer update --no-dev -o | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: Composer install and build (Dokan-lite) | ||||||||||||||||||||||||||||||||||||||||||||||
# run: | | ||||||||||||||||||||||||||||||||||||||||||||||
# composer i --no-dev -o || composer update --no-dev -o | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- name: Npm install and build (Dokan-lite) | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
npm ci || npm i | ||||||||||||||||||||||||||||||||||||||||||||||
npm run build | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: Npm install and build (Dokan-lite) | ||||||||||||||||||||||||||||||||||||||||||||||
# run: | | ||||||||||||||||||||||||||||||||||||||||||||||
# npm ci || npm i | ||||||||||||||||||||||||||||||||||||||||||||||
# npm run build | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Install test dependencies | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Install test dependencies | ||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -103,29 +106,6 @@ jobs: | |||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
mkdir -p wp-data && touch wp-data/debug.log | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Start wordpress environment | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Start WordPress Env | ||||||||||||||||||||||||||||||||||||||||||||||
id: wp-env | ||||||||||||||||||||||||||||||||||||||||||||||
uses: nick-fields/retry@v3 | ||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||
timeout_minutes: 4 | ||||||||||||||||||||||||||||||||||||||||||||||
max_attempts: 2 | ||||||||||||||||||||||||||||||||||||||||||||||
retry_on: error | ||||||||||||||||||||||||||||||||||||||||||||||
command: | | ||||||||||||||||||||||||||||||||||||||||||||||
cd tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
npm run start:env | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Set permalink structure | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Set Permalink structure | ||||||||||||||||||||||||||||||||||||||||||||||
working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
npm run wp-env run tests-cli wp rewrite structure /%postname%/ | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Activate theme | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Activate theme:Storefront | ||||||||||||||||||||||||||||||||||||||||||||||
working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
npm run wp-env run tests-cli wp theme activate storefront | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Get Playwright version | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Get installed Playwright version | ||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -160,69 +140,98 @@ jobs: | |||||||||||||||||||||||||||||||||||||||||||||
# run: | | ||||||||||||||||||||||||||||||||||||||||||||||
# npm run pw:deps-only | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# # Start wordpress environment | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: Start WordPress Env | ||||||||||||||||||||||||||||||||||||||||||||||
# id: wp-env | ||||||||||||||||||||||||||||||||||||||||||||||
# uses: nick-fields/retry@v3 | ||||||||||||||||||||||||||||||||||||||||||||||
# with: | ||||||||||||||||||||||||||||||||||||||||||||||
# timeout_minutes: 4 | ||||||||||||||||||||||||||||||||||||||||||||||
# max_attempts: 2 | ||||||||||||||||||||||||||||||||||||||||||||||
# retry_on: error | ||||||||||||||||||||||||||||||||||||||||||||||
# command: | | ||||||||||||||||||||||||||||||||||||||||||||||
# cd tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
# npm run start:env | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# # Run e2e tests | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: 🧪 Run e2e tests | ||||||||||||||||||||||||||||||||||||||||||||||
# id: e2e-test | ||||||||||||||||||||||||||||||||||||||||||||||
# if: success() && (github.event_name != 'workflow_dispatch' || ( github.event_name == 'workflow_dispatch' && (github.event.inputs.testsuite == 'E2E' || github.event.inputs.testsuite == 'All'))) | ||||||||||||||||||||||||||||||||||||||||||||||
# timeout-minutes: 40 | ||||||||||||||||||||||||||||||||||||||||||||||
# working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
# run: | | ||||||||||||||||||||||||||||||||||||||||||||||
# docker run --rm \ | ||||||||||||||||||||||||||||||||||||||||||||||
# --network host \ | ||||||||||||||||||||||||||||||||||||||||||||||
# -v ${{ github.workspace }}:/workspace \ | ||||||||||||||||||||||||||||||||||||||||||||||
# -w /workspace/tests/pw \ | ||||||||||||||||||||||||||||||||||||||||||||||
# mcr.microsoft.com/playwright:v1.49.1-noble \ | ||||||||||||||||||||||||||||||||||||||||||||||
# npm run test:e2e | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+156
to
+169
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion E2E test execution needs proper configuration. The current implementation lacks proper error handling and browser-specific configuration. - name: 🧪 Run e2e tests
id: e2e-test
if: success() && (github.event_name != 'workflow_dispatch' || ( github.event_name == 'workflow_dispatch' && (github.event.inputs.testsuite == 'E2E' || github.event.inputs.testsuite == 'All')))
timeout-minutes: 40
working-directory: tests/pw
run: |
- npm run test:e2e
+ BROWSER=chromium npm run test:e2e || exit 1 Also applies to: 170-178 |
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Run e2e tests | ||||||||||||||||||||||||||||||||||||||||||||||
- name: 🧪 Run e2e tests | ||||||||||||||||||||||||||||||||||||||||||||||
id: e2e-test | ||||||||||||||||||||||||||||||||||||||||||||||
if: success() && (github.event_name != 'workflow_dispatch' || ( github.event_name == 'workflow_dispatch' && (github.event.inputs.testsuite == 'E2E' || github.event.inputs.testsuite == 'All'))) | ||||||||||||||||||||||||||||||||||||||||||||||
timeout-minutes: 40 | ||||||||||||||||||||||||||||||||||||||||||||||
working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
npm run test:e2e | ||||||||||||||||||||||||||||||||||||||||||||||
npm run test:e2e | ||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+170
to
+178
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Improve E2E test execution configuration. The E2E test execution step lacks proper configuration and error handling. Enhance the test execution step: - name: 🧪 Run e2e tests
id: e2e-test
if: success() && (github.event_name != 'workflow_dispatch' || ( github.event_name == 'workflow_dispatch' && (github.event.inputs.testsuite == 'E2E' || github.event.inputs.testsuite == 'All')))
timeout-minutes: 40
working-directory: tests/pw
run: |
- npm run test:e2e
+ npm run test:e2e:chrome || exit 1 📝 Committable suggestion
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Run e2e coverage | ||||||||||||||||||||||||||||||||||||||||||||||
- name: 🧪 Run e2e coverage | ||||||||||||||||||||||||||||||||||||||||||||||
if: always() && (steps.e2e-test.outcome == 'success' || steps.e2e-test.outcome == 'failure') | ||||||||||||||||||||||||||||||||||||||||||||||
working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
npm run test:e2e:coverage | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Run api tests | ||||||||||||||||||||||||||||||||||||||||||||||
- name: 🧪 Run api tests | ||||||||||||||||||||||||||||||||||||||||||||||
id: api-test | ||||||||||||||||||||||||||||||||||||||||||||||
if: always() && steps.wp-env.outcome == 'success' && ( github.event_name != 'workflow_dispatch' || ( github.event_name == 'workflow_dispatch' && (github.event.inputs.testsuite == 'API' || github.event.inputs.testsuite == 'All'))) | ||||||||||||||||||||||||||||||||||||||||||||||
timeout-minutes: 5 | ||||||||||||||||||||||||||||||||||||||||||||||
working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
npm run test:api | ||||||||||||||||||||||||||||||||||||||||||||||
# # Run e2e coverage | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: 🧪 Run e2e coverage | ||||||||||||||||||||||||||||||||||||||||||||||
# if: always() && (steps.e2e-test.outcome == 'success' || steps.e2e-test.outcome == 'failure') | ||||||||||||||||||||||||||||||||||||||||||||||
# working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
# run: | | ||||||||||||||||||||||||||||||||||||||||||||||
# npm run test:e2e:coverage | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# # Run api tests | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: 🧪 Run api tests | ||||||||||||||||||||||||||||||||||||||||||||||
# id: api-test | ||||||||||||||||||||||||||||||||||||||||||||||
# if: always() && steps.wp-env.outcome == 'success' && ( github.event_name != 'workflow_dispatch' || ( github.event_name == 'workflow_dispatch' && (github.event.inputs.testsuite == 'API' || github.event.inputs.testsuite == 'All'))) | ||||||||||||||||||||||||||||||||||||||||||||||
# timeout-minutes: 5 | ||||||||||||||||||||||||||||||||||||||||||||||
# working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
# run: | | ||||||||||||||||||||||||||||||||||||||||||||||
# npm run test:api | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Prepare test summary | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Prepare test summary | ||||||||||||||||||||||||||||||||||||||||||||||
id: prepare-test-summary | ||||||||||||||||||||||||||||||||||||||||||||||
uses: actions/github-script@v7 | ||||||||||||||||||||||||||||||||||||||||||||||
if: always() && steps.clone-dokan-lite.outcome == 'success' | ||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||
result-encoding: string | ||||||||||||||||||||||||||||||||||||||||||||||
script: | | ||||||||||||||||||||||||||||||||||||||||||||||
const script = require("./tests/pw/utils/gitTestSummary.ts") | ||||||||||||||||||||||||||||||||||||||||||||||
return await script({github, context, core}) | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# # Find PR comment | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: Find PR comment by github-actions[bot] | ||||||||||||||||||||||||||||||||||||||||||||||
# id: find-comment | ||||||||||||||||||||||||||||||||||||||||||||||
# if: github.event_name == 'pull_request' | ||||||||||||||||||||||||||||||||||||||||||||||
# uses: peter-evans/find-comment@v3 | ||||||||||||||||||||||||||||||||||||||||||||||
# with: | ||||||||||||||||||||||||||||||||||||||||||||||
# issue-number: ${{ github.event.pull_request.number }} | ||||||||||||||||||||||||||||||||||||||||||||||
# comment-author: 'github-actions[bot]' | ||||||||||||||||||||||||||||||||||||||||||||||
# body-includes: Tests Summary | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# # Post test summary as PR comment | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: Create or update PR comment | ||||||||||||||||||||||||||||||||||||||||||||||
# if: github.event_name == 'pull_request' | ||||||||||||||||||||||||||||||||||||||||||||||
# uses: peter-evans/create-or-update-comment@v4 | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: Prepare test summary | ||||||||||||||||||||||||||||||||||||||||||||||
# id: prepare-test-summary | ||||||||||||||||||||||||||||||||||||||||||||||
# uses: actions/github-script@v7 | ||||||||||||||||||||||||||||||||||||||||||||||
# if: always() && steps.clone-dokan-lite.outcome == 'success' | ||||||||||||||||||||||||||||||||||||||||||||||
# with: | ||||||||||||||||||||||||||||||||||||||||||||||
# comment-id: ${{ steps.find-comment.outputs.comment-id }} | ||||||||||||||||||||||||||||||||||||||||||||||
# issue-number: ${{ github.event.pull_request.number }} | ||||||||||||||||||||||||||||||||||||||||||||||
# body: ${{ steps.prepare-test-summary.outputs.result }} | ||||||||||||||||||||||||||||||||||||||||||||||
# reactions: hooray | ||||||||||||||||||||||||||||||||||||||||||||||
# edit-mode: replace | ||||||||||||||||||||||||||||||||||||||||||||||
# result-encoding: string | ||||||||||||||||||||||||||||||||||||||||||||||
# script: | | ||||||||||||||||||||||||||||||||||||||||||||||
# const script = require("./tests/pw/utils/gitTestSummary.ts") | ||||||||||||||||||||||||||||||||||||||||||||||
# return await script({github, context, core}) | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# # # Find PR comment | ||||||||||||||||||||||||||||||||||||||||||||||
# # - name: Find PR comment by github-actions[bot] | ||||||||||||||||||||||||||||||||||||||||||||||
# # id: find-comment | ||||||||||||||||||||||||||||||||||||||||||||||
# # if: github.event_name == 'pull_request' | ||||||||||||||||||||||||||||||||||||||||||||||
# # uses: peter-evans/find-comment@v3 | ||||||||||||||||||||||||||||||||||||||||||||||
# # with: | ||||||||||||||||||||||||||||||||||||||||||||||
# # issue-number: ${{ github.event.pull_request.number }} | ||||||||||||||||||||||||||||||||||||||||||||||
# # comment-author: 'github-actions[bot]' | ||||||||||||||||||||||||||||||||||||||||||||||
# # body-includes: Tests Summary | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# # # Post test summary as PR comment | ||||||||||||||||||||||||||||||||||||||||||||||
# # - name: Create or update PR comment | ||||||||||||||||||||||||||||||||||||||||||||||
# # if: github.event_name == 'pull_request' | ||||||||||||||||||||||||||||||||||||||||||||||
# # uses: peter-evans/create-or-update-comment@v4 | ||||||||||||||||||||||||||||||||||||||||||||||
# # with: | ||||||||||||||||||||||||||||||||||||||||||||||
# # comment-id: ${{ steps.find-comment.outputs.comment-id }} | ||||||||||||||||||||||||||||||||||||||||||||||
# # issue-number: ${{ github.event.pull_request.number }} | ||||||||||||||||||||||||||||||||||||||||||||||
# # body: ${{ steps.prepare-test-summary.outputs.result }} | ||||||||||||||||||||||||||||||||||||||||||||||
# # reactions: hooray | ||||||||||||||||||||||||||||||||||||||||||||||
# # edit-mode: replace | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Backup Database | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Backup Database | ||||||||||||||||||||||||||||||||||||||||||||||
if: always() && steps.wp-env.outcome == 'success' | ||||||||||||||||||||||||||||||||||||||||||||||
working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
npm run wp-env run tests-cli wp db export wp-data/db.sql | ||||||||||||||||||||||||||||||||||||||||||||||
# - name: Backup Database | ||||||||||||||||||||||||||||||||||||||||||||||
# if: always() && steps.wp-env.outcome == 'success' | ||||||||||||||||||||||||||||||||||||||||||||||
# working-directory: tests/pw | ||||||||||||||||||||||||||||||||||||||||||||||
# run: | | ||||||||||||||||||||||||||||||||||||||||||||||
# npm run wp-env run tests-cli wp db export wp-data/db.sql | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
# Upload artifacts | ||||||||||||||||||||||||||||||||||||||||||||||
- name: Archive test artifacts (screenshots, HTML snapshots, Reports) | ||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -236,3 +245,22 @@ jobs: | |||||||||||||||||||||||||||||||||||||||||||||
tests/pw/playwright-report | ||||||||||||||||||||||||||||||||||||||||||||||
if-no-files-found: ignore | ||||||||||||||||||||||||||||||||||||||||||||||
retention-days: 30 | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- name: Publish HTML report to GH Pages | ||||||||||||||||||||||||||||||||||||||||||||||
if: always() && steps.generate-html-report.outcome == 'success' | ||||||||||||||||||||||||||||||||||||||||||||||
uses: peaceiris/actions-gh-pages@v4 | ||||||||||||||||||||||||||||||||||||||||||||||
with: | ||||||||||||||||||||||||||||||||||||||||||||||
github_token: ${{ secrets.GITHUB_TOKEN }} | ||||||||||||||||||||||||||||||||||||||||||||||
publish_branch: gh-pages | ||||||||||||||||||||||||||||||||||||||||||||||
publish_dir: ./tests/pw/all-reports/html-report | ||||||||||||||||||||||||||||||||||||||||||||||
destination_dir: ${{ github.event.pull_request.number || github.sha }} | ||||||||||||||||||||||||||||||||||||||||||||||
keep_files: true | ||||||||||||||||||||||||||||||||||||||||||||||
user_name: 'github-actions[bot]' # This will be the username that gets stamped in the repo commit | ||||||||||||||||||||||||||||||||||||||||||||||
user_email: 'github-actions[bot]@users.noreply.github.com' # This will be the user email that gets stamped in the repo com | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix HTML report publishing configuration. The step references an undefined step ID 'generate-html-report' which will cause the workflow to fail. - name: Publish HTML report to GH Pages
- if: always() && steps.generate-html-report.outcome == 'success'
+ if: always() && steps.e2e-test.outcome != 'skipped'
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }} 📝 Committable suggestion
Suggested change
🧰 Tools🪛 actionlint (1.7.4)250-250: property "generate-html-report" is not defined in object type {clone-dokan-lite: {conclusion: string; outcome: string; outputs: {commit: string; ref: string}}; debug-log: {conclusion: string; outcome: string; outputs: {string => string}}; e2e-test: {conclusion: string; outcome: string; outputs: {string => string}}; playwright-cache: {conclusion: string; outcome: string; outputs: {cache-hit: string}}; playwright-version: {conclusion: string; outcome: string; outputs: {string => string}}; pw-install: {conclusion: string; outcome: string; outputs: {string => string}}} (expression) |
||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
- name: Test results | ||||||||||||||||||||||||||||||||||||||||||||||
if: always() | ||||||||||||||||||||||||||||||||||||||||||||||
run: | | ||||||||||||||||||||||||||||||||||||||||||||||
echo "https://$GITHUB_REPOSITORY_OWNER.github.io/${GITHUB_REPOSITORY#*/}" | ||||||||||||||||||||||||||||||||||||||||||||||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -146,7 +146,7 @@ export default defineConfig({ | |
name: 'e2e_tests', | ||
testMatch: /.*\.spec\.ts/, | ||
/* whether not to run setup tests before running actual tests */ | ||
dependencies: NO_SETUP ? [] : ['e2e_setup'], | ||
// dependencies: NO_SETUP ? [] : ['e2e_setup'], | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 💡 Codebase verification Keep the e2e_setup dependency to maintain test reliability The e2e_setup dependency is part of a carefully designed test initialization chain:
🔗 Analysis chainVerify test dependencies before removing setup phase. Commenting out the e2e_setup dependency could lead to test failures if the environment is not properly initialized. Consider keeping the dependency and using the existing 🏁 Scripts executedThe following scripts were executed for the analysis: Script: #!/bin/bash
# Description: Check if any tests depend on environment setup
# Look for setup-dependent operations in test files
# Search for environment-dependent operations
rg -l "beforeAll|beforeEach" tests/e2e/
Length of output: 92 Script: #!/bin/bash
# First, find test files to understand the directory structure
fd -e ts -e js test
# Then look for setup patterns in the test files
rg -l "beforeAll|beforeEach|setup" tests/pw/
# Check the content of the config file for context
cat tests/pw/e2e.config.ts
Length of output: 12654 |
||
/* whether not to run teardown tests after running actual tests */ | ||
// teardown: NO_SETUP ? undefined : 'coverage_report', | ||
}, | ||
|
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -7,7 +7,7 @@ | |||||
"nid": "npm install --include=dev", | ||||||
"nip": "npm install --omit=dev", | ||||||
"pw:chrome-only": "playwright install chromium", | ||||||
"pw:browser-with-deps": "playwright install --with-deps chromium", | ||||||
"pw:browser-with-deps": "playwright install --with-deps", | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Align browser installation with Chrome-only objective The current change installs all browsers, which contradicts the PR's "chrome only" objective and increases CI time unnecessarily. Apply this fix to install only Chrome: - "pw:browser-with-deps": "playwright install --with-deps",
+ "pw:browser-with-deps": "playwright install --with-deps chromium" 📝 Committable suggestion
Suggested change
|
||||||
"pw:deps-only": "playwright install-deps chromium", | ||||||
"test": "npx playwright test", | ||||||
"site:reset": "NO_SETUP=false npm run site:setup && npm run env:setup", | ||||||
|
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -3,9 +3,14 @@ import { LoginPage } from '@pages/loginPage'; | |||||
import { data } from '@utils/testData'; | ||||||
|
||||||
test.describe('Admin functionality test', () => { | ||||||
test('admin can login', { tag: ['@lite', '@admin'] }, async ({ page }) => { | ||||||
const loginPage = new LoginPage(page); | ||||||
await loginPage.adminLogin(data.admin); | ||||||
test.only('admin can login', { tag: ['@lite', '@admin'] }, async ({ page }) => { | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Remove .only to enable all tests. Using - test.only('admin can login', { tag: ['@lite', '@admin'] }, async ({ page }) => {
+ test('admin can login', { tag: ['@lite', '@admin'] }, async ({ page }) => { 📝 Committable suggestion
Suggested change
|
||||||
await page.goto('https://www.google.com/'); | ||||||
await page.getByLabel('Search', { exact: true }).click(); | ||||||
await page.getByLabel('Search', { exact: true }).fill('playwright.dev'); | ||||||
await page.goto( | ||||||
'https://www.google.com/search?q=playwright.dev&sca_esv=445ea37e19471e67&hl=en&source=hp&ei=p-d8Z4euGMGJ4dUPwLHBuAM&iflsig=AL9hbdgAAAAAZ3z1t0_0F54ioUTUzvVc6jgP2g_yFzvM&ved=0ahUKEwjHnYiumuOKAxXBRLgEHcBYEDcQ4dUDCA4&uact=5&oq=playwright.dev&gs_lp=Egdnd3Mtd2l6Ig5wbGF5d3JpZ2h0LmRldjIFEAAYgAQyBRAAGIAEMgUQABiABDIFEAAYgAQyBRAAGIAEMgUQABiABDIFEAAYgAQyBRAAGIAEMgUQABiABEjbS1CeE1ioR3AGeACQAQCYAbMBoAH8D6oBBDMuMTS4AQPIAQD4AQGYAhegAsoQqAIKwgIKEAAYAxjqAhiPAcICChAuGAMY6gIYjwHCAggQABiABBixA8ICCxAAGIAEGLEDGIMBwgILEC4YgAQYsQMYgwHCAg4QABiABBixAxiDARiKBcICCxAuGIAEGNEDGMcBwgIHEAAYgAQYCsICBBAAGB7CAgYQABgKGB7CAgYQABgIGB7CAggQABgIGAoYHpgDBvEFu5uprVvqxY-SBwQ5LjE0oAeEZg&sclient=gws-wiz', | ||||||
); | ||||||
await page.getByRole('link', { name: 'Playwright: Fast and reliable' }).click(); | ||||||
}); | ||||||
|
||||||
test('admin can logout', { tag: ['@lite', '@admin'] }, async ({ page }) => { | ||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
WordPress environment setup is required.
The WordPress environment setup is critical for E2E testing, even with Chrome-only changes.
Restore the WordPress setup with proper retry mechanism: