发现 AI 代理的未来arrow_forward

AISquare Studio AutoQA

calendar_today收录于 2026年4月24日
category智能体与应用工具
code开源
工作流自动化多智能体系统PlaywrightAI代理智能体框架浏览器自动化自然语言处理智能体与应用工具开发者工具/代码自动化/工作流/RPA

AI 驱动的 GitHub Action,将 PR 描述中的自然语言测试步骤自动生成、执行并提交为 Playwright 端到端测试。

AISquare Studio AutoQA 是一个 AI 驱动的 GitHub Action,能够将 PR 描述中的自然语言测试步骤自动转换为可执行的 Playwright Python 端到端测试,并在 CI 流水线中执行。

项目基于 CrewAI 多智能体架构实现,包含三个核心智能体:Planner Agent 负责自然语言到测试代码的转换,Executor Agent 负责代码安全校验与沙箱执行,Step Executor Agent 在 Active Execution Mode 下提供逐步骤的实时浏览器上下文感知生成。通过 DOMInspectorTool 实现智能选择器发现,结合 RetryHandler 提供自动错误恢复与替代选择器尝试。

安全层面,所有 AI 生成的代码在执行前经过 AST 静态分析,阻止 eval、exec、subprocess、文件 I/O 等危险操作,仅允许 playwright.sync_apitimedatetimere 四个白名单模块导入。测试在沙箱化的 Playwright 浏览器上下文中执行,日志与报告中的敏感信息自动脱敏。

支持三种执行模式:generate(从 PR 生成新测试)、suite(运行已有回归套件)、all(同时生成与回归)。测试按 A/B/C 三级关键性分类组织,生成路径为 tests/autoqa/{tier}/{area}/test_{flow_name}.py。基于 ETag 的幂等机制避免对未变更 PR 的重复生成,Pip 包与 Playwright 浏览器缓存将冷启动时间从 3–4 分钟优化至 45–60 秒。执行结果以截图、HTML 报告和 JSON 工件形式回注到 PR 评论中。

快速开始#

在目标仓库创建 .github/workflows/autoqa.yml

name: AutoQA Test Generation

on:
  pull_request:
    types: [opened, synchronize, edited]

jobs:
  autoqa:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
      - name: Generate and Execute Tests
        uses: AISquare-Studio/AISquare-Studio-QA@main
        with:
          openai-api-key: ${{ secrets.OPENAI_API_KEY }}
          staging-url: ${{ secrets.STAGING_URL }}
          staging-email: ${{ secrets.STAGING_EMAIL }}
          staging-password: ${{ secrets.STAGING_PASSWORD }}

需配置 Secrets:OPENAI_API_KEY(需 GPT-4 访问权限)、STAGING_URLSTAGING_EMAILSTAGING_PASSWORD

PR 描述中使用 autoqa 代码块编写测试步骤:

```autoqa
flow_name: user_login_success
tier: A
area: auth
```

1. Navigate to the login page
2. Enter valid email address
3. Enter valid password
4. Click the login button
5. Verify the dashboard appears

核心架构#

  • ActionRunnersrc/autoqa/action_runner.py)— GitHub Action 主编排器
  • AutoQAParsersrc/autoqa/parser.py)— PR Body 元数据解析
  • IterativeOrchestratorsrc/execution/iterative_orchestrator.py)— 逐步骤执行协调
  • ExecutionContextsrc/execution/execution_context.py)— 步骤间状态跟踪
  • RetryHandlersrc/execution/retry_handler.py)— 失败分析与重试逻辑
  • DOMInspectorToolsrc/tools/dom_inspector.py)— 实时页面选择器发现
  • PlaywrightExecutorsrc/tools/playwright_executor.py)— 测试代码执行引擎
  • QACrewsrc/crews/qa_crew.py)— CrewAI 智能体编排定义

Action 配置参数#

Input必填默认值说明
openai-api-keyYesOpenAI API 密钥
openai-modelNoopenai/gpt-4.1用于测试生成的模型
staging-urlYes测试环境 URL
qa-github-tokenNogithub.tokenGitHub Token
staging-emailNotest@example.com测试账号邮箱
staging-passwordNo测试账号密码
target-repo-pathNo.目标仓库路径
test-directoryNotests/autoqa生成测试的基础目录
create-prNofalse是否为测试创建独立 PR
execution-modeNogenerate执行模式:generate / suite / all

待确认信息#

  • 独立官网:未发现
  • AISquare Studio 组织背景:README 提及但无详细介绍
  • 首次发布日期:仓库有 3 个 tag 和 163 次提交,无明确首次发布时间
  • 生产使用案例:未列出实际使用该 Action 的公开仓库
  • 是否支持其他 LLM 提供商:当前仅明确支持 OpenAI API

保持更新

获取最新的 AI 工具和趋势,直接发送到您的收件箱。没有垃圾邮件,只有智能。

rocket_launch