mcpField
P
patrol-setup

patrol-setup

github.com/leancodepl测试与质量1.5k295 次安装今天更新
代码仓库

关于 patrol-setup

这项配置技能帮助在 Android 模拟器上运行首个 Patrol 测试,涵盖原生配置、自包含测试、生成文件排除及常见问题;初始范围不包括 iOS。

主要功能

  1. 01Patrol 依赖与 Android 配置
  2. 02最小自包含测试
  3. 03排除生成文件与机密
  4. 04模拟器运行与故障排查

适用场景

  1. 01在 Flutter 项目中配置 Patrol
  2. 02在 Android 上验证测试框架
  3. 03诊断 MainActivity 或 flavor 配置错误

MCP 相关

将 Patrol MCP 列为可选后续步骤,可供 Agent 运行测试、截图、检查原生 UI 树并控制交互会话。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/leancodepl/patrol --skill patrol-setup

安装后在 Claude Code 中输入/patrol-setup确认已加载。

详细介绍

Patrol 设置

先在 Android 模拟器上通过一个 Patrol 测试。请一开始就告知用户,这仅涵盖 Android(pubspec 中的 patrol: 块 + 原生 Android);iOS 和其他平台遵循相同的安装文档,但不属于本次初始设置。

本技能介绍了有序流程和容易踩坑之处;权威文档是版本、原生配置和代码的准确信息来源——每个步骤都应遵循文档,而不是自行猜测:

1. 配置 Patrol

按照 Setup 步骤操作,并直接链接到相关位置:

2. 编写第一个最小化测试

按照 write your first test 中的说明使用当前 API: https://patrol.leancode.co/documentation/write-your-first-test

第一个测试应当独立自包含——仅使用 Flutter 框架组件,不依赖应用或后端——这样测试通过就能证明测试框架本身正常。将其放在 patrol_test/(或配置的 test_directory)中。

3. 忽略 bundle 和机密信息

根据 Setup 部分,将 test_bundle.dart(由 Patrol 生成)和 .patrol.env(你的 dart-defines,通常包含机密信息)添加到 Git 忽略列表: https://patrol.leancode.co/documentation#setup

4. 在模拟器上运行

启动 Android 模拟器,并在运行前等待其完全启动——在启动过程中运行测试会失败。然后使用 patrol test 运行单个测试。测试通过即表示设置完成。

易踩坑之处

  • 无法解析 MainActivity(Java) — 将 MainActivityTest.java 中的 package 设置为应用的 applicationId。
  • 其他错误(bundle 构建失败、卡住、flavor 不匹配)— 请参阅文档 FAQ:https://patrol.leancode.co/documentation#faq

下一步:Patrol MCP(可选)

设置通过后,告知用户 Patrol MCP 已提供,可按需设置——它能让 AI Agent 运行测试、截取屏幕截图、读取原生 UI 树,并驱动交互式会话。由用户决定;如果用户需要,请按照 README 操作:https://pub.dev/packages/patrol_mcp

评论

支持 Markdown