Skip to content
Snippets Groups Projects
Select Git revision
  • abb58e943a83665f8f9db36a6d4d1ecd64c5970f
  • main default protected
  • studip-rector
  • ci-opt
  • course-members-export-as-word
  • data-vue-app
  • pipeline-improvements
  • webpack-optimizations
  • rector
  • icon-renewal
  • http-client-and-factories
  • jsonapi-atomic-operations
  • vueify-messages
  • tic-2341
  • 135-translatable-study-areas
  • extensible-sorm-action-parameters
  • sorm-configuration-trait
  • jsonapi-mvv-routes
  • docblocks-for-magic-methods
19 results

playwright.config.ts

Blame
  • Forked from Stud.IP / Stud.IP
    Source project has a limited visibility.
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    playwright.config.ts 2.52 KiB
    import { defineConfig, devices } from '@playwright/test';
    import dotenv from 'dotenv';
    import path from 'path';
    
    
    // Read from default ".env" file.
    dotenv.config();
    
    /**
     * See https://playwright.dev/docs/test-configuration.
     */
    export default defineConfig({
        testDir: path.resolve(__dirname, 'tests', 'e2e'),
        outputDir: path.resolve(__dirname, 'tests', 'e2e', 'test-results'),
        /* 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 ? 3 : 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: process.env.PLAYWRIGHT_BASE_URL ?? 'http://127.0.0.1',
    
            locale: process.env.PLAYWRIGHT_LOCALE ?? 'de_DE',
    
            /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
            trace: 'on-first-retry',
    
            actionTimeout: 10 * 1000,
            navigationTimeout: 30 * 1000,
    
            launchOptions: {
                slowMo: process.env.PLAYWRIGHT_TEST_SPEED ?? 50,
            },
        },
        expect: {
            timeout: 10 * 1000,
        },
    
        /* Configure projects for major browsers */
        projects: [
    
            { name: 'setup', testMatch: /.*\.setup\.ts/ },
    
            // {
            //     name: 'chromium',
            //     use: { ...devices['Desktop Chrome'] },
            // },
    
            {
                name: 'firefox',
                use: { ...devices['Desktop Firefox'] },
                dependencies: ['setup'],
            },
    
            // {
            //     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' },
            // },
        ],
    });