You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Percy的基准分支手动上传基线截图

Percy基准分支基线快照手动上传方案(React Native + Detox 场景)

Percy没有单独针对基准分支的专属上传接口,所有分支的快照上传逻辑完全一致,基准分支的基线本质是该分支下经人工审核通过的快照版本,按以下流程操作即可完成develop分支基线初始化,支持按需调整快照内容,无需依赖Storybook。

前置准备

  • 本地切到develop分支,拉取最新已合入的正式代码,确保代码版本和你要设定的基准版本一致
  • 在本地环境配置项目对应的Percy权限凭证:设置环境变量PERCY_TOKEN为项目的读写token,和Detox自动化测试所用的token保持一致

生成待上传的基线截图

两种方式可自由选择,均支持按需调整快照内容:

  • 依赖Detox用例自动生成:直接执行全量Detox视觉测试用例,@percy/detox SDK会自动收集测试过程中触发的截图,暂存在本地临时目录,无需手动导出
  • 自定义准备截图:如果需要调整基线内容(比如替换测试环境生成的带脏数据的截图、补充自动化用例未覆盖的页面),可以自行准备符合预期的PNG格式截图,按页面/场景命名后统一放到单独目录即可

上传快照到develop分支

上传时通过环境变量指定目标分支为develop即可,用通用上传命令就能完成,不需要特殊参数:

  • 用Detox自动生成的截图时,执行以下命令:
# iOS端示例
PERCY_BRANCH=develop npx percy exec -- detox test -c ios.sim.release
# 安卓端替换为对应的Detox安卓配置即可
  • 用自定义准备的截图时,执行percy原生上传命令:
PERCY_BRANCH=develop npx percy upload ./path-to-your-custom-screenshots

如果你的Percy项目后台配置的默认基准分支不是develop,把上述命令里的分支名替换为实际配置的基准分支名即可

完成基线设置

  • 上传完成后进入Percy项目的构建列表,找到刚才上传到develop分支的对应构建
  • 逐张核对所有快照内容,确认符合基准预期后,点击全量通过按钮审核完成
  • 审核通过的快照会自动成为develop分支的正式基线,后续其他分支提交PR执行Detox视觉测试时,会自动拉取这批快照做比对,不会再出现无基线导致的比对失败问题

后续基线调整

如果需要更新基线内容,重复上述流程即可:切到develop分支,上传调整后的新快照,审核通过后新快照会自动替换旧版本成为最新基线。
如果项目配置了develop分支保护,不允许直接上传构建,可以先把快照上传到临时分支,在Percy后台找到对应构建,手动操作将其设置为基准分支的基线即可。

内容的提问来源于stack exchange,提问作者giles

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 02:45:35