跳转到内容

打开应用

打开应用 用于在移动设备上启动指定应用程序。你可以从平台预置的应用列表中选择目标应用,支持在 Android、iOS 和 Harmony 设备上执行,并支持冷启动和热启动两种模式。它常用于 UI 自动化回归、稳定性测试、多 App 互跳链路验证和远程运维等场景。

指令标识:MobileOpenApplication
指令类型:移动端指令
指令描述:在移动设备上启动指定应用程序

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

方式怎么用适合人群
可视化编排(推荐先学)拖入「打开应用」节点,在右侧表单选择应用包名,按需在高级配置中修改打开类型大多数用户,零代码,适合快速搭建和调试
代码编排(Python)在脚本中调用 bots.mobileOpenApplication(appPackage=..., openType="COLD")熟悉代码、需要复用脚本或批量生成流程的用户

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

  • 自动化测试流程中启动被测应用,进入主界面开始测试。
  • 启动应用后进行长时间稳定性测试或随机操作测试。
  • 多应用跳转场景中启动目标应用,验证跳转链路。
  • 远程启动设备上的应用,进行运维操作或问题排查。
  • 测试应用的启动时间和启动性能指标。
  • 目标应用已安装在设备上;若未安装会返回 APP_NOT_EXIT_ERROR,可提前调用 安装应用
  • 已从平台预置的应用列表中选择正确的目标应用。
  • 应用启动后建议增加适当等待,确保页面加载完成。
  • 多进程应用(如小程序容器)请确认 appPackage 与实际运行进程对齐。

【图片占位 | command-mobileopenapplication-config】
截图内容建议: 截一张可视化编排页面,画布选中「打开应用」节点,右侧属性面板展示「应用包名」下拉选择和高级配置中的「打开类型」。
标注建议: 用 ① 标出应用包名下拉框,用 ② 标出打开类型(冷启动/热启动),用 ③ 标出高级配置入口,用 ④ 标出运行按钮。
用户看完应能明白: 主要只需要选择目标应用包名;打开类型是按需配置的高级项,默认冷启动。

下面用一个常见场景演示:冷启动被测应用,进入主界面准备后续操作。按 3 步即可跑起来:

  1. 在画布中添加 打开应用 指令,通常放在移动端流程的前面。
  2. 应用包名 下拉框中选择目标应用;如需热启动,在高级配置中把「打开类型」改为 HOT
  3. 点击运行,确认目标应用已启动并进入主界面。
界面名称代码属性名类型必填默认值说明
应用包名appPackageEnum-目标应用,从平台预置的应用列表中以下拉枚举方式选择(取值为平台预置的应用枚举,对应各应用的 Android 包名或 iOS/Harmony BundleId)。
打开类型openTypeEnumCOLD(冷启动)高级参数,冷启动=COLD(完全重新启动应用,清除之前状态);热启动=HOT(从后台唤醒应用,保留之前状态)。
  • 目标应用被成功启动并进入主界面。
  • 冷启动时应用从初始状态加载,热启动时保留之前状态。
  • 运行日志中没有应用未安装或启动失败报错。
现象 / 报错原文可能原因处理建议
返回 APP_NOT_EXIT_ERROR目标应用未安装先调用 安装应用 安装应用
启动后页面未加载完成没有等待时间启动后增加 延迟 或等待关键元素出现
多进程应用启动异常appPackage 与实际运行进程不一致调用前确认 appPackage 字段正确
选择的应用与预期不符选错了预置应用枚举在下拉框中重新选择正确的目标应用

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

# 冷启动应用(默认)
bots.mobileOpenApplication(
appPackage="com.example.app",
openType="COLD",
)

如需从后台唤醒应用,使用热启动:

# 热启动应用
bots.mobileOpenApplication(
appPackage="com.example.app",
openType="HOT",
)

可视化表单里的「应用包名」「打开类型」分别对应代码里的 appPackageopenType。其中 appPackage 在界面上以下拉枚举方式提供,代码编排时填写对应的预置应用枚举值或应用包名。

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

A: 若应用尚未安装,打开应用将返回 APP_NOT_EXIT_ERROR。可提前调用 安装应用 指令安装应用。

A: 对于多进程应用(如小程序容器),内部通过 getPackageName 取值 appPackage 与实际运行进程对齐,如有差异请在调用前确保字段正确。

A: 应用启动后建议添加适当的等待时间,确保页面加载完成。可以使用 延迟 指令或等待关键元素出现。

Q4:冷启动和热启动有什么区别?

Section titled “Q4:冷启动和热启动有什么区别?”

A: 冷启动和热启动的主要区别如下表所示:

特性冷启动热启动
启动方式完全重新启动应用从后台唤醒应用
应用状态清除之前的状态保留之前的状态
内存使用重新加载所有资源复用已加载的资源
启动速度较慢较快
适用场景测试初始状态、首次启动性能测试恢复场景、应用切换