| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- /**
- * Playwright 线上 UI 级 E2E 配置(针对已部署站点 cfc.iwintrue.com)
- * ================================================================
- * 与 playwright.config.js 的关键区别:
- * - **无 globalSetup**:默认配置的 globalSetup 会执行 reset-db.sh 重置共享测试库,
- * 对本配置(打生产/测试已部署站点)绝对禁止。
- * - 只做只读浏览器自动化:不写业务数据(唯一例外是登录,属只读会话建立)。
- * - workers=1、fullyParallel=false:单节点串行,符合「每个节点只能跑一个浏览器自动化任务」。
- * - 两个 project 按 spec 分流:admin 走桌面视口,frontend(小程序 H5)走移动视口。
- *
- * 运行(单节点、串行):
- * npx playwright test -c playwright.config.live.js --project=admin-desktop
- * npx playwright test -c playwright.config.live.js --project=frontend-mobile
- */
- var path = require('path');
- var LIVE_BASE = process.env.LIVE_BASE_URL || 'http://cfc.iwintrue.com';
- module.exports = {
- testDir: path.join(__dirname, 'e2e-live'),
- timeout: 150000,
- expect: { timeout: 15000 },
- retries: 0,
- workers: 1,
- fullyParallel: false,
- outputDir: path.join(__dirname, '.live-artifacts'),
- reporter: [['list']],
- use: {
- baseURL: LIVE_BASE,
- headless: true,
- ignoreHTTPSErrors: true,
- actionTimeout: 20000,
- navigationTimeout: 60000,
- screenshot: 'only-on-failure',
- trace: 'off',
- video: 'off',
- },
- projects: [
- {
- name: 'admin-desktop',
- testMatch: /admin-live\.spec\.js$/,
- use: { browserName: 'chromium', viewport: { width: 1440, height: 900 } },
- },
- {
- name: 'frontend-mobile',
- testMatch: /frontend-live\.spec\.js$/,
- use: { browserName: 'chromium', viewport: { width: 375, height: 812 }, isMobile: true, hasTouch: true },
- },
- {
- // 接口级契约(商城价格排序需求变更 S1):无需浏览器,走 request fixture 直连 /api
- name: 'shop-api',
- testMatch: /shop-sort-api\.spec\.js$/,
- use: { browserName: 'chromium' },
- },
- ],
- };
|