diff options
| author | Serghei Iakovlev <egrep@protonmail.ch> | 2024-04-07 00:29:52 +0200 |
|---|---|---|
| committer | Serghei Iakovlev <egrep@protonmail.ch> | 2024-04-07 10:42:25 +0200 |
| commit | 4b64cb4135d19f02c0ba0022b999513205367b60 (patch) | |
| tree | 33451ecc5907966309c433690f3bc0d33a935026 | |
| parent | ee383cb436faa50b775f9f9ec5d3573d70131f29 (diff) | |
| download | gohugo-theme-ed-4b64cb4135d19f02c0ba0022b999513205367b60.tar.gz | |
Add Playwright config
| -rw-r--r-- | playwright.config.js | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/playwright.config.js b/playwright.config.js new file mode 100644 index 0000000..6d4e8e6 --- /dev/null +++ b/playwright.config.js @@ -0,0 +1,80 @@ +'use strict'; + +const { defineConfig, devices } = require('@playwright/test'); + +/** + * Read environment variables from file. + * https://github.com/motdotla/dotenv + */ +// require('dotenv').config(); + +/** + * @see https://playwright.dev/docs/test-configuration + */ +module.exports = defineConfig({ + testDir: './tests', + /* Run tests in files in parallel */ + fullyParallel: true, + /* Fail the build on CI if you accidentally left test.only in the source code. */ + forbidOnly: !!process.env.CI, + /* Retry on CI only */ + retries: process.env.CI ? 2 : 0, + /* Opt out of parallel tests on CI. */ + workers: process.env.CI ? 1 : undefined, + /* Reporter to use. See https://playwright.dev/docs/test-reporters */ + reporter: 'html', + /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ + use: { + /* Base URL to use in actions like `await page.goto('/')`. */ + baseURL: 'http://127.0.0.1:1313', + + /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ + trace: 'on-first-retry' + }, + + /* Configure projects for major browsers */ + projects: [ + { + name: 'chromium', + use: { ...devices['Desktop Chrome'] } + }, + + { + name: 'firefox', + use: { ...devices['Desktop Firefox'] } + }, + + { + name: 'webkit', + use: { ...devices['Desktop Safari'] } + } + + /* Test against mobile viewports. */ + // { + // name: 'Mobile Chrome', + // use: { ...devices['Pixel 5'] }, + // }, + // { + // name: 'Mobile Safari', + // use: { ...devices['iPhone 12'] }, + // }, + + /* Test against branded browsers. */ + // { + // name: 'Microsoft Edge', + // use: { ...devices['Desktop Edge'], channel: 'msedge' }, + // }, + // { + // name: 'Google Chrome', + // use: { ...devices['Desktop Chrome'], channel: 'chrome' }, + // } + ], + + /* Run your local dev server before starting the tests */ + webServer: { + command: 'npm run server', + url: 'http://127.0.0.1:1313', + reuseExistingServer: !process.env.CI + } +}); + |
