一、前置说明
- 本文一键启动Appium自动化环境,只适用于Windows环境;
- 请参照Python+Appium2.0的APP自动化环境搭建搭建Appium环境。
- 一键启动过程如下:
- 启动模拟器,本例中为夜神模拟器
- 开启Android设备远程调试,并连接设备
- 启动uiautomatorviewer,用于定位元素
- 启动Appium Server,用于自动化移动应用程序的测试
二、操作步骤
复制以下内容,另存为bat脚本:
start-appium-env.bat
:: =====================前置条件(开始)==================== :: 1.已成功搭Appium2.0环境,如何搭建请参考:https://mp.weixin.qq.com/s/4TMRmQMDu7-gn4Azpo4SXQ :: 2.已成功搭Appium2.0环境,如何搭建请参考:https://mp.weixin.qq.com/s/4TMRmQMDu7-gn4Azpo4SXQ :: 3.已成功搭Appium2.0环境,如何搭建请参考:https://mp.weixin.qq.com/s/4TMRmQMDu7-gn4Azpo4SXQ :: =====================前置条件说明(结束)==================== :: =====================参数配置(开始)==================== :: 模拟器路径 set "emulatorPath=D:\ProgramFiles\Nox\bin\Nox.exe" :: 模拟器.exe文件名称 set "emulatorName=Nox.exe" :: 模拟器远程连接地址 set "remoteAndroid=127.0.0.1:62001" :: uiautomatorviewer.bat的路径 set "uiautomatorviewerPath=D:\ProgramFiles\Android\android-sdk\tools\uiautomatorviewer.bat" :: =====================参数配置(结束)==================== :: 关闭命令回显,禁止显示执行的每条命令 @echo off :: 将代码页设置为UTF-8, 使echo输出中文字符串 chcp 65001 :: 重启模拟器(避免模拟器原因,导致自动化脚本失败) taskkill /F /IM %emulatorName%" start "" "%emulatorPath%" echo 模拟器已启动, 正在开启设备... :: 开启adb server adb kill-server adb start-server set "retryCount=0" set "connectionSuccess=" :retry :: 开启远程调试 adb connect %remoteAndroid% | findstr /C:"already connected to %remoteAndroid%" :: 模拟器启动 Andorid 设备需要时间,在1分钟内重复尝试连接设备 if errorlevel 1 ( set /a retryCount+=1 if %retryCount% lss 6 ( timeout /t 10 >nul goto retry ) else ( echo 启动Android远程调试失败 goto end ) )else ( set "connectionSuccess=1" ) adb devices echo Android 设备开启成功,并已启动远程调试功能 :: 重启uiautomatorviewer(uiautomatorviewer用于定位元素,重启解决有时定位不到元素的问题) taskkill /F /IM java.exe /FI "WINDOWTITLE eq UI Automator Viewer" start /B "" ""D:\ProgramFiles\Android\android-sdk\tools\uiautomatorviewer.bat"" echo uiautomatorviewer已启动 :: 重启appium server(避免appium server原因,导致自动化脚本失败) REM 查找占用端口号4723的进程(appium server的默认端口为4723),查杀之后再重新店动appium server for /f "tokens=5" %%a in ('netstat -ano ^| find "4723"') do set "PID=%%a" if defined PID ( taskkill /F /PID %PID% appium ) else ( appium ) :end
三、Demo验证
脚本执行完成后,成功启动模拟器:
成功启动uiautomatorviewer:
成功启动Appium Server: