SuperAPI AI 工具集

browser-e2e-tester

测试与质量

查看项目

更新于 10-16 04:04

技能介绍

Browser E2E Tester 是一个基于浏览器的端到端(E2E)测试工具,用于验证功能实现是否满足验收标准。

用途 该工具面向“功能验证”这一目标:运行浏览器端的端到端测试,检查某项功能的实现是否达到其验收标准。当需要运行端到端测试、在浏览器中验证功能、核验用户流程或测试功能实现时可以使用它。

主要能力

  • 运行单个功能的测试:通过功能 ID(如 "auth-001")执行对应测试,并返回通过/失败结果。
  • 运行全部功能测试:批量执行所有功能测试,并统计通过数量与总数。
  • 完整的 E2E 测试工作流,分为四个阶段:
    1. 设置(SETUP):加载功能验收标准、按需启动测试服务器、初始化浏览器自动化、设置测试超时。
    2. 执行(EXECUTE):导航至功能入口、执行测试步骤、失败时截图、记录测试产物。
    3. 验证(VERIFY):检查预期结果、校验 UI 状态、验证 API 响应、断言数据持久化。
    4. 报告(REPORT):生成测试报告、更新功能状态、存储失败产物。
  • 测试结果结构:TestResult 数据类包含 feature_id、passed、duration_ms、steps_executed、steps_passed、failures、screenshots、artifacts。
  • 支持多种测试框架:Playwright(原生集成,适用于现代 Web 应用)、Puppeteer(适配器,面向 Chrome)、Selenium(适配器,面向旧版浏览器)、Cypress(命令行,面向组件测试)。

使用方式 在 Python 中导入核心测试器并调用:

from scripts.e2e_tester import E2ETester

tester = E2ETester(project_dir) result = await tester.test_feature("auth-001")

if result.passed: print(f"Feature verified: {result.feature_id}") else: print(f"Failed: {result.failures}")

运行全部测试:

results = await tester.test_all_features() print(f"Passed: {results.passed}/{results.total}")

功能验收标准采用 JSON 格式定义,包含 feature_id 与 acceptance_criteria 列表,每个步骤声明 action(如 goto、fill、click、assert_url)、target 及对应 value 或 expected。

集成点 该工具可与以下环节集成:coding-agent(实现完成后触发测试)、progress-tracker(上报测试指标)、error-recoverer(处理测试失败)、checkpoint-manager(失败时恢复状态)。

参考文档与脚本 参考文档包括 references/E2E-PATTERNS.md(测试模式)与 references/BROWSER-AUTOMATION.md(自动化指南)。脚本包括 scripts/e2e_tester.py(核心测试器)、scripts/browser_controller.py(浏览器自动化)、scripts/test_reporter.py(报告生成)、scripts/acceptance_parser.py(验收标准解析)。

适用场景 适合需要以浏览器自动化方式验证功能实现、核验用户流程、按验收标准执行端到端测试的工程与质量保障场景。

限制 关于具体收费、价格、部署平台、运行环境要求、性能指标等信息,资料中暂未提供。