使用Jenkins+robot framework+Appium实现持续集成后,只想在一台有RF的机子上打开多个appium服务,实现在不同安卓终端运行各自的用例,具体如下:
1、robot framework的remote url端口参数化:
2、运行appium服务:
用命令行分别运行2个appium服务:(注意端口号和终端IP不同)
appium -a 127.0.0.1 -p 4723 -U 192.168.7.151:5555 --no-reset
appium -a 127.0.0.1 -p 4823 -U 192.168.7.152:5555 --no-reset
3、Jenkins项目配置:
有两个项目,在构建的Execute Windows batch command分别输入命令如下:
pybot.bat --variable port:4723用例A
pybot.bat --variable port:4823用例B
4、修改Jenkins单节点最多可执行JOB数量:
系统管理->管理节点->编辑节点,修改 # of executors 为 2
OK,修改后,即可在同一台电脑上运行2个JOB
5、appium连接2台设备:
正常连接两台设备:
adb connect 192.168.7.151
adb connect 192.168.7.152
要看到两台都连接上,才可以,可能出现问题:
如果出现offline:那可能是那台终端被其他台电脑所连接,其他电脑需要断开连接,本机才可以连上
如果出现unable to connect to :5555,那可能这台终端之前被其他台电脑给连接了
出现以上2个情况,解决办法:重启安卓终端或者重启开发者模式
5、保存后,执行,即可在不同的机器上运行不同的用例,这样,只需要在一台机子上安装RF即可。