如何在Jenkins中通过Shell脚本并行运行Appium Server和Android Emulator?

时间:2017-01-21 11:36:54

标签: jenkins android-emulator appium

我想在Jenkins中启动Appium服务器进行自动化测试,并通过命令行启动Emulator。当我在jenkins build step的shell命令中通过Appium启动脚本启动Appium时,Appium服务器启动并正确运行。

但是,问题是我需要使用相同的shell脚本启动Android模拟器。由于Appium服务器在后台运行,因此启动模拟器的下一个shell命令不会影响,并且jenkins构建失败。所以我需要在Jenkins build step中通过Shell Script并行运行Appium服务器和Android Emulator。

请提供并行运行这两个脚本的解决方案。

2 个答案:

答案 0 :(得分:1)

也许使用parallel,例如:

node{
     stage('Tests') {
        parallel(appium: {
            //first script
        }, emulator: {
            //second script
        })
    }
}

答案 1 :(得分:1)

我让Appium服务器和Android Emulator在Jenkins构建步骤中通过shell脚本并行运行。

我在Shell脚本中执行以下操作,并成功运行自动化测试。

#!/bin/sh
echo Start Emulator and Appium:
 emulator -avd Test -noaudio -no-boot-anim -no-snapshot-load -no-snapshot-save -no-window &
 appium &
 sleep 2m

sleep命令使命令进入休眠状态或等待仿真器初始化,appium服务器并行检测设备。