diff --git a/playwright.config.ts b/playwright.config.ts index 1e5defb999..068c6582e3 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -12,83 +12,21 @@ import type { PlaywrightTestConfig } from '@playwright/test'; */ const config: PlaywrightTestConfig = { testDir: './tests', - /* Maximum time one test can run for. */ timeout: 30 * 1000, - expect: { - /** - * Maximum time expect() should wait for the condition to be met. - * For example in `await expect(locator).toHaveText();` - */ - timeout: 5000, - }, - /* 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: '100%', - /* Reporter to use. See https://playwright.dev/docs/test-reporters */ - reporter: 'list', - // reporter: 'html', - /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ use: { - /* Maximum time each action such as `click()` can take. Defaults to 0 (no limit). */ - actionTimeout: 0, - /* Base URL to use in actions like `await page.goto('/')`. */ - // baseURL: 'http://localhost:3000', - - /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */ + browserName: 'chromium', + viewport: { width: 1440, height: 800 }, + actionTimeout: 5 * 1000, + // Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer + // You can open traces locally(`npx playwright show-trace trace.zip`) + // or in your browser on [Playwright Trace Viewer](https://trace.playwright.dev/). trace: 'on-first-retry', - /* Record video when failure */ - // video: 'retain-on-failure', + // Record video only when retrying a test for the first time. + video: 'on-first-retry', }, + retries: process.env.CI ? 3 : 0, + workers: '100%', - /* Configure projects for major browsers */ - projects: [ - { - name: 'chromium', - use: { - browserName: 'chromium', - viewport: { width: 1440, height: 800 }, - actionTimeout: 5 * 1000, - }, - }, - - /* 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: { - // channel: 'msedge', - // }, - // }, - // { - // name: 'Google Chrome', - // use: { - // channel: 'chrome', - // }, - // }, - ], - - /* Folder for test artifacts such as screenshots, videos, traces, etc. */ - // outputDir: 'test-results/', - - /* Run your local dev server before starting the tests */ webServer: { command: 'npm run dev', port: 8080,