mcpField
R
roborazzi

roborazzi

github.com/takahirom测试与质量1.1k128 次安装1 周前更新
代码仓库

关于 roborazzi

Roborazzi 是用于 Android 的截图测试技能,借助 Robolectric Native Graphics 在 JVM 上运行测试,覆盖视图、Jetpack Compose、Compose Previews 和 Compose Multiplatform。

主要功能

  1. 01以 JVM 单元测试运行截图测试
  2. 02测试 Android 视图和 Jetpack Compose
  3. 03录制、比较并验证截图
  4. 04捕获 GIF 和视频
  5. 05生成 UI 树转储

适用场景

  1. 01无需设备或模拟器测试 UI 截图
  2. 02在构建流程中验证截图变化
  3. 03从 Compose Previews 生成截图测试

安装

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

$npx skills add https://github.com/takahirom/roborazzi --skill roborazzi

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
ai_powered_image_assertion.md
build_setup.md
compose_multiplatform.md
faq.md
gif_and_video.md
github_actions.md
gradle_properties_options.md
how_to_use.md
idea_plugin.md
preview_support.md
top.md
try_it_out.md
ui_tree_dump.md

详细介绍

Roborazzi

Roborazzi 是一个适用于 Android 的截图测试库,可通过 Robolectric Native Graphics 在 JVM 上运行,因此截图测试可以作为 JVM 单元测试运行,无需设备或模拟器。它适用于普通 Android 视图、Jetpack Compose(包括 Compose 预览)以及 Compose Multiplatform。

典型工作流:使用 ./gradlew recordRoborazziDebug 录制基准图像,然后使用 compareRoborazziDebug / verifyRoborazziDebug 与基准图像比较或验证(任务名称因 变体而异;请参阅构建设置参考)。

参考索引

请阅读与当前任务相符的参考资料:

文件阅读时机
references/top.md需要了解 Roborazzi 是什么,以及为什么要使用它而不是设备测试或 Paparazzi。
references/try_it_out.md想要快速入门,或试用示例项目。
references/build_setup.md设置 Gradle 插件和依赖项,或运行/了解 record/compare/verify Gradle 任务及其输出。
references/how_to_use.md编写测试:用于视图/Compose/Espresso 的 captureRoboImage、RoborazziRule 及其选项、输出路径和文件命名、RoborazziOptions(阈值、图像比较器、转储模式)。
references/gif_and_video.md捕获测试交互的 GIF 和视频:captureRoboGif、recordRoboVideo / recordScreenRoboVideo、RoboVideoOptions、GIF 与 APNG 输出。
references/ui_tree_dump.mdUI 树转储:面向工具和 AI Agent 的机器可读 .uitree.json 语义侧车文件及带注释的 Set-of-Mark 图像(roborazzi.dumpUiTree、uiTreeDumpOptions),包括通过边界框验证 UI 修复的工作流。
references/github_actions.md为 Roborazzi 设置 GitHub Actions CI:存储基准截图、验证截图,以及在拉取请求中比较快照结果的工作流。
references/preview_support.md使用 ComposablePreviewScanner 从 @Preview 可组合项生成截图测试,包括预览测试的设置和自定义。
references/compose_multiplatform.md测试 Compose Multiplatform 目标平台(iOS、桌面/JVM)的截图,包括各平台支持的功能。
references/ai_powered_image_assertion.md通过 roborazzi-ai 模块使用 AI 模型(OpenAI、Gemini)断言截图内容。
references/gradle_properties_options.md配置 roborazzi.* Gradle 属性:任务行为、输出目录、文件名策略、比较报告设置。
references/idea_plugin.md使用 Roborazzi IntelliJ IDEA / Android Studio 插件在 IDE 中查看截图。
references/faq.md故障排查:常见错误、CI 设置问题、Robolectric 配置问题及其他常见问题。

references/ 下的文件与发布此技能时的 Roborazzi 官方文档一致。最新版本始终可在 文档网站上获取。

评论

支持 Markdown