11require ( 'dotenv' ) . config ( ) ;
22
3- const { defineConfig, devices } = require ( '@playwright/test' ) ;
4- const isWSL = ! ! process . env . WSL_DISTRO_NAME ;
3+ if ( ! process . env . BASE_URL ) {
4+ throw new Error ( 'BASE_URL is not set. Copy .env.example to .env and update BASE_URL.' ) ;
5+ }
6+
7+ const { defineConfig } = require ( '@playwright/test' ) ;
58
69module . exports = defineConfig ( {
710 testDir : './tests' ,
8- timeout : 30_000 ,
9- fullyParallel : true ,
10- forbidOnly : ! ! process . env . CI ,
11- retries : process . env . CI ? 2 : 0 ,
12- workers : process . env . CI ? 1 : undefined ,
11+ timeout : 60000 ,
12+ retries : 0 ,
13+ workers : 1 ,
1314 reporter : [
1415 [ 'list' ] ,
1516 [ 'html' , { outputFolder : 'playwright-report' , open : 'never' } ] ,
1617 [ 'junit' , { outputFile : 'test-results/junit/results.xml' } ]
1718 ] ,
1819 use : {
19- baseURL : process . env . BASE_URL || 'https://example.com' ,
20- trace : 'on-first-retry' ,
21- screenshot : 'only-on-failure' ,
22- video : 'retain-on-failure'
20+ baseURL : process . env . BASE_URL ,
21+ browserName : 'chromium' ,
22+ headless : ! ! process . env . CI ,
23+ viewport : { width : 1280 , height : 720 } ,
24+ ignoreHTTPSErrors : true ,
2325 } ,
24- projects : [
25- {
26- name : 'chromium' ,
27- use : {
28- ...devices [ 'Desktop Chrome' ] ,
29- launchOptions : {
30- args : [
31- '--window-position=80,80' ,
32- '--window-size=1440,900' ,
33- '--start-maximized' ,
34- ...( isWSL ? [ '--ozone-platform=x11' , '--disable-gpu' ] : [ ] )
35- ]
36- }
37- }
38- }
39- ] ,
4026 outputDir : 'test-results/artifacts'
4127} ) ;
0 commit comments