2
0

playwright.config.ts 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import { defineConfig, devices } from '@playwright/test';
  2. export default defineConfig({
  3. testDir: './specs',
  4. fullyParallel: true,
  5. forbidOnly: !!process.env.CI,
  6. retries: process.env.CI ? 2 : 0,
  7. workers: process.env.CI ? 1 : undefined,
  8. reporter: [
  9. ['html'],
  10. ['list'],
  11. ['junit', { outputFile: 'test-results/junit.xml' }]
  12. ],
  13. use: {
  14. baseURL: process.env.E2E_BASE_URL || 'http://localhost:8080',
  15. trace: 'on-first-retry',
  16. screenshot: 'only-on-failure',
  17. video: 'retain-on-failure',
  18. },
  19. projects: [
  20. {
  21. name: 'chromium',
  22. use: { ...devices['Desktop Chrome'] },
  23. },
  24. {
  25. name: 'firefox',
  26. use: { ...devices['Desktop Firefox'] },
  27. },
  28. {
  29. name: 'webkit',
  30. use: { ...devices['Desktop Safari'] },
  31. },
  32. {
  33. name: 'Mobile Chrome',
  34. use: { ...devices['Pixel 5'] },
  35. },
  36. {
  37. name: 'Mobile Safari',
  38. use: { ...devices['iPhone 12'] },
  39. },
  40. ],
  41. webServer: {
  42. command: 'npm run dev',
  43. url: 'http://localhost:8080',
  44. reuseExistingServer: !process.env.CI,
  45. timeout: 120000,
  46. },
  47. });