Appium 3.x实战:Python后台切换与关闭APP新写法

📅 2026/7/24 21:05:17
Appium 3.x实战:Python后台切换与关闭APP新写法
Appium 3.x 实战笔记APP后台切换与关闭的新版正确写法适配Python Client 5.x前言本文为Appium移动端自动化学习笔记针对Appium 3.x Appium-Python-Client 5.x版本梳理「APP置于后台」「强制关闭APP」两个常用操作的标准实现方式。老版本客户端中driver.background_app()、driver.close_app()等直接调用方法已被移除新版统一通过mobile:协议执行本文所有代码均基于雷电9安卓9环境实操验证适合新手复习避坑。本文为个人原创学习笔记发布于CSDN仅作技术交流Appium遵循Apache 2.0开源协议。一、将APP置于后台backgroundApp功能说明模拟用户按Home键把当前前台APP切到后台运行不会杀死进程可设置后台停留时长到期自动切回前台常用于测试APP前后台切换、生命周期场景。新版正确写法# seconds3 表示后台停留3秒后自动切回前台driver.execute_script(mobile: backgroundApp,{seconds:3})参数说明seconds后台停留的秒数填正整数停留对应秒数后自动把APP切回前台填0直接切到后台不会自动切回需要手动重新启动APP二、强制关闭指定APPterminateApp功能说明彻底杀死目标APP的进程等同于手动在多任务界面划掉APP关闭后Appium与设备的连接依然保留后续可继续执行其他操作。新版正确写法# 替换引号内的包名即可关闭对应APPdriver.execute_script(mobile: terminateApp,{appId:com.android.settings})扩展写法关闭当前前台APP不想硬编码包名时可以先获取当前前台APP的包名再执行关闭适合通用工具脚本。current_pkgdriver.current_package driver.execute_script(mobile: terminateApp,{appId:current_pkg})三、完整可运行示例代码以下代码可直接复制运行实现「打开系统设置 → 切到后台3秒 → 自动切回 → 强制关闭设置APP」的完整流程。importtimefromappiumimportwebdriverfromappium.options.commonimportAppiumOptions# 配置参数caps{platformName:Android,appium:platformVersion:9,appium:deviceName:25102RKBEC,appium:automationName:UiAutomator2,appium:appPackage:com.android.settings,appium:appActivity:com.android.settings.Settings,appium:noReset:True,}# 创建驱动连接AppiumoptionsAppiumOptions()options.load_capabilities(caps)driverwebdriver.Remote(command_executorhttp://127.0.0.1:4723,optionsoptions)# 1. 将APP置于后台3秒自动切回driver.execute_script(mobile: backgroundApp,{seconds:3})time.sleep(3)# 2. 强制关闭系统设置APPdriver.execute_script(mobile: terminateApp,{appId:com.android.settings})# 结束会话driver.quit()四、新旧API对照表复习速查老版本直接写法已失效新版标准写法功能说明driver.background_app(秒数)driver.execute_script(mobile: backgroundApp, {seconds: 秒数})将APP切到后台driver.close_app()driver.execute_script(mobile: terminateApp, {appId: 包名})强制关闭指定APPdriver.terminate_app(包名)同上同上五、新手避坑总结两个“关闭”一定要分清mobile: terminateApp只关闭APP进程连接不断后面还能继续操作设备driver.quit()断开整个Appium连接会话彻底结束只能放在脚本最后收尾后台操作的等待注意seconds参数本身就包含了等待逻辑设置seconds3时代码会阻塞3秒等APP切回不需要额外加time.sleep如果设为0不自动切回才需要自己控制等待时长。权限说明后台切换、关闭APP这两个操作不需要开启--relaxed-security权限正常启动Appium即可运行只有执行shell命令、安装卸载APK等操作才需要放开安全限制。版权与参考说明本文为个人原创学习笔记所有代码与案例均为实操整理发布于CSDN仅作技术交流Appium 为开源自动化测试框架遵循 Apache 2.0 开源协议引用其官方规范仅作学习说明参考资料Appium 官方文档