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>
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
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'] } },
|
||||
],
|
||||
});
|
||||
Reference in New Issue
Block a user