Files
aurak/playwright.config.ts
T
Developer 100aaa3880 feat: Playwright 三Agent应用 — Generator→Planner→Healer 完整流水线
三Agent流程:
1. Generator: codegen 录制操作生成测试代码草稿
2. Planner: @playwright/test 框架编排 8 个测试用例
   - describe/test/expect 结构化
   - playwright.config.ts 并行执行 + HTML 报告
3. Healer: trace + retries + screenshot 自动修复
   - 失败自动重试 2 次
   - 首次重试时保存 trace.zip
   - 生成 playwright-report/ 可视化报告

测试结果: 8/8 passed (23秒)
产物: test-results/ 含 trace.zip, playwright-report/ HTML报告

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 11:03:21 +08:00

39 lines
1.1 KiB
TypeScript

import { defineConfig, devices } from '@playwright/test';
/**
* Playwright 配置 — 三 Agent 集成
* Planner: 测试结构 + 并行执行 + HTML 报告
* Healer: 自动重试 + Trace 快照
* Generator: 通过 codegen 命令配合使用
*/
export default defineConfig({
testDir: './tests',
fullyParallel: true,
forbidOnly: !!process.env.CI,
retries: process.env.CI ? 2 : 1, // ← Healer: 失败自动重试
workers: process.env.CI ? 1 : 3, // ← Planner: 并行执行
reporter: [
['html', { outputFolder: 'playwright-report' }], // ← Planner: HTML 报告
['list'], // ← Planner: 控制台实时输出
],
// ← Healer: 失败时保存 Trace 和截图
trace: 'on-first-retry',
screenshot: 'only-on-failure',
video: 'on-first-retry',
timeout: 120000, // 单测超时 2 分钟
expect: { timeout: 10000 },
use: {
baseURL: 'http://localhost:13001',
headless: true,
viewport: { width: 1440, height: 900 },
ignoreHTTPSErrors: true,
},
projects: [
{ name: 'chromium', use: { ...devices['Desktop Chrome'] } },
],
});