个人项目 AI 自动化测试框架
AI Playwright Framework
开源 Alpha / 持续迭代
以 YAML 管理可审查的 Playwright / pytest 测试资产,保留确定性执行,并支持经浏览器验证的 AI 生成、定位恢复和自然语言任务。
- 类型
- 个人项目
- 状态
- 开源 Alpha / 持续迭代
- 我的角色
- 框架设计 / Python 实现
- 获取方式
- 开源免费
- 技术栈
- Python
- Playwright
- pytest
- YAML
- Allure
- LLM
- uv
- GitHub Actions
关于项目
AI Playwright Framework 是一个基于 Playwright 和 pytest 的 YAML-first UI 自动化框架。它把 cases、data、elements、modules、vars 作为测试资产的事实来源,让稳定用例可以在 strict 模式下完全确定地运行;同时提供 smart selector 恢复、自然语言 agent_case 执行和 gen 用例生成,帮助快速变化的页面降低用例编写与维护成本。项目当前处于 alpha 阶段,但已经包含契约测试、YAML schema 校验、重复定义检查、打包检查和 GitHub Actions CI 门禁,重点是让 AI 辅助能力服务于可审查、可版本化、可重复执行的测试资产,而不是替代确定性测试链路。
设计边界
框架把确定性测试和 AI 辅助拆开处理。稳定回归用例保留在 YAML 资产中,可以被审查、版本化并在无模型环境下执行;AI 只进入生成、selector 恢复或自然语言探索这些更适合辅助的场景。
测试资产模型
test_data/<project>/ 下按 cases、data、elements、modules、vars 和 generation 分层。这样测试顺序、步骤主体、稳定元素 key、公共流程、变量和生成输入各自有明确职责,减少用例增长后的维护混乱。
执行模式
strict、smart、ai_step、agent_case 和 gen 对应不同风险等级。strict 提供最稳定的传统执行,smart 只修复 selector,agent_case 处理运行时意图,gen 负责把自然语言规格转成可提交的 YAML。
质量门禁
仓库包含 contract tests、YAML schema 校验、重复定义检查、格式检查、打包检查和安装后 CLI 冒烟检查。目标是让框架契约先稳定,再逐步扩展 AI runtime 行为。
项目要点
YAML-first 资产分层:cases 定义顺序,data 承载步骤,elements 维护稳定 selector,modules 复用流程,vars 管理变量。
strict 模式只执行显式 YAML,不调用模型;smart 模式保持 action 不变,只在当前步骤意图内恢复 selector。
agent_case 支持自然语言步骤或目标的运行时执行,但仍通过统一 StepExecutor 命令管线落到标准动作。
gen 能从自然语言规格生成正式 YAML,并要求通过真实浏览器验证后再写入,避免不可审查的隐式自动化。
默认外部模型数据脱敏策略,配合契约测试、schema 校验、重复定义检查、打包和 CLI 冒烟检查作为质量门禁。
相关主题
- 自动化测试
- Playwright
- AI测试
- pytest
- YAML
- 测试框架
On the loom — screens
项目实览