跳转到内容

手机截屏

手机截屏 用于截取移动设备当前屏幕的图像,并把截图结果(图片地址)保存到输出变量,常用于记录执行过程、保存错误现场、做视觉校验和生成测试报告。

指令标识:MobileTakeScreenshot
指令类型:移动端指令
指令描述:截取手机当前屏幕图像,保存至输出参数

工作流支持「可视化编排」和「代码编排」两种创建方式。手机截屏 在两种方式里都能用,核心业务参数一致,区别主要是你通过界面配置,还是通过 Python 脚本配置。

方式怎么用适合人群
可视化编排(推荐先学)拖入「手机截屏」节点,填写结果变量名即可大多数用户,零代码,适合快速搭建和调试
代码编排(Python)在脚本中调用 bots.mobileTakeScreenshot(outKey="...")熟悉代码、需要复用脚本或批量生成流程的用户

第一次使用建议先用可视化编排跑通,再迁移到 Python 代码编排。下方「参数说明」同时给出界面字段和代码参数名,方便两种方式对应。

  • 在关键步骤后截图,记录执行过程便于排查。
  • 异常发生时保存错误现场。
  • 截图后做图片相似度等视觉校验。
  • 把截图加入测试报告,提供可视化结果。
  • 设备已连接且屏幕处于待截取的目标状态。
  • 已规划好「将结果保存至」的变量名,用于引用上传后的图片地址。
  • 如需等页面稳定后再截,可在截图前添加 延迟
  • 截图需独占设备操作(框架已加设备锁);若存在录屏 / 投屏占用可能失败。
  • 该指令默认失败即中止(报错中止)。

【图片占位 | command-mobiletakescreenshot-config】
截图内容建议: 截一张可视化编排页面,画布选中「手机截屏」节点,右侧属性面板展示「将结果保存至」。
标注建议: 用 ① 标出节点,用 ② 标出结果变量名,用 ③ 标出运行按钮,用 ④ 标出运行后得到的图片地址。
用户看完应能明白: 这个指令主要填一个结果变量名,运行后得到截图的图片地址。

下面用一个常见场景演示:在关键步骤后截图,保存现场。按 4 步即可跑起来:

  1. 在前序流程中操作到需要记录的界面状态。
  2. 添加 手机截屏 节点。
  3. 将结果保存至 填写变量名(如 screenshotUrl)。
  4. 点击运行,确认变量得到截图的图片地址(s3Url)。

无。

界面名称代码属性名类型必填说明
将结果保存至outKeyString保存截图结果信息,成功后返回图片地址 s3Url;不填则结果无法被后续节点引用
  • 运行成功,结果变量得到截图的图片地址。
  • 截图内容与设备当前屏幕一致。

运行后你会看到(以上面场景为例):

  • 变量 screenshotUrl 得到上传成功后的图片地址(s3Url);若上传失败则返回 UPLOAD_S3_ERROR
现象 / 报错原文可能原因处理建议
返回 UPLOAD_S3_ERROR图片上传失败检查网络后重试
截图失败屏幕被录屏 / 投屏占用关闭录屏 / 投屏后重试
截图非预期画面截图时机过早,页面未稳定截图前添加 延迟 等待页面稳定
iOS 上传耗时长高分辨率设备截图较大必要时压缩后再处理

代码编排以 Python 为主。运行上下文由代码编排模板创建,示例里只需要关注业务指令本身。

# 截取当前屏幕,图片地址保存到 screenshotUrl
bots.mobileTakeScreenshot(outKey="screenshotUrl")

可视化表单里的「将结果保存至」对应代码里的 outKey

如果你想在工作流中通过节点动态编排指令,可使用 执行指令(XML)节点。

A: 结果保存在「将结果保存至」对应的变量中,成功后返回上传后的图片地址 s3Url,失败返回 UPLOAD_S3_ERROR。建议填写结果变量名,否则无法引用截图地址。

A: 执行该指令时立即截取当前屏幕。如需等待页面稳定后再截,可在截图前添加 延迟 指令。

A: 截图需独占设备操作,框架已加设备锁避免并发。若屏幕被录屏 / 投屏占用,截图可能失败。

Q4:iOS 高分辨率设备有什么注意事项?

Section titled “Q4:iOS 高分辨率设备有什么注意事项?”

A: 截图尺寸较大、上传耗时增加,建议必要时压缩。支持 Android 和 iOS 设备。