【问题背景】
在Mac使用本地终端用 java -jar target/XXX-1.0-SNAPSHOT.jar 命令跑工程,可以!
但是在Jerkins平台上,就不行,报错:
+ java -jar target/XXX-1.0-SNAPSHOT.jar
java.lang.RuntimeException: 不存在android或者iOS测试设备
at com.XXX.tool.ui.appium.manager.AppiumDeviceManager.getDevices(AppiumDeviceManager.java:94)
at com.XXX.tool.ui.appium.manager.AppiumDeviceManager.<init>(AppiumDeviceManager.java:32)
at com.XXX.tool.ui.appium.manager.AppiumDeviceManager.getInstance(AppiumDeviceManager.java:75)
at com.XXX.tool.Run.getDeviceQueue(Run.java:217)
at com.XXX.tool.Run.dispersedRun(Run.java:54)
at com.XXX.YYY.Run.main(Run.java:27)
查找问题:
1、检查Jerkins上的ADB是否能执行:
1.1)需要在Jerkins配置文件的执行Shell处加上一句:adb devices,看看能不能打出来设备信息。
(因为在本地的终端执行adb devices是可以打出来设备信息的!)
1.2)果然,在Jerkins执行这一句adb devices时,报错了…… “ jenkins: line 8: adb: command not found ”
所以ADB有问题,查找下:
王导发的链接: [Jenkins] 配置任务中的坑s
——但是解决了两个小时还是没有解决出来啊!!!
尝试解决:
1、在Jerkins配置ANDROID_HOME的环境变量
因为连接的是Android手机,Jerkins在使用ADB时需要在Jerkins配置ANDROID_HOME的环境变量的。
配置路径:Jerkins --> Manage Jerkins --> Configure System --> 全局属性 --> Environment variables:
——设置好之后,去重新跑工程,还是报错:“adb: command not found”
Jerkins平台上运行Appium工程报错:java.lang.RuntimeException: 不存在android或者iOS测试设备