全部作品

个人项目

AI Playwright Framework

开源 Alpha / 持续迭代

以 YAML 管理可审查的 Playwright / pytest 测试资产,保留确定性执行,并支持经浏览器验证的 AI 生成、定位恢复和自然语言任务。

查看源码
类型
个人项目
状态
开源 Alpha / 持续迭代
我的角色
框架设计 / Python 实现
获取方式
开源免费
技术栈
  • Python
  • Playwright
  • pytest
  • YAML
  • Allure
  • LLM
  • uv
  • GitHub Actions
AI Playwright YAML 资产分层
AI Playwright Framework:YAML 测试资产分层

关于项目

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 行为。

项目要点

  1. YAML-first 资产分层:cases 定义顺序,data 承载步骤,elements 维护稳定 selector,modules 复用流程,vars 管理变量。

  2. strict 模式只执行显式 YAML,不调用模型;smart 模式保持 action 不变,只在当前步骤意图内恢复 selector。

  3. agent_case 支持自然语言步骤或目标的运行时执行,但仍通过统一 StepExecutor 命令管线落到标准动作。

  4. gen 能从自然语言规格生成正式 YAML,并要求通过真实浏览器验证后再写入,避免不可审查的隐式自动化。

  5. 默认外部模型数据脱敏策略,配合契约测试、schema 校验、重复定义检查、打包和 CLI 冒烟检查作为质量门禁。

相关主题

  • 自动化测试
  • Playwright
  • AI测试
  • pytest
  • YAML
  • 测试框架

On the loom — screens

项目实览

AI Playwright agent 意图执行演示
自然语言意图通过统一执行链路落到 Playwright 动作。
AI Playwright AI 用例生成演示
从生成规格产出可审查、可提交的 YAML 用例。
Esc