如何通过 Jenkins 中的 Shell 脚本并行 运行 Appium 服务器和 Android 仿真器?
How to Run Appium Server and Android Emulator in Parallel through Shell Script in Jenkins?
我想在 Jenkins 中启动 Appium 服务器进行自动化测试,并通过命令行启动 Emulator。当我通过 jenkins build step
中的 shell 命令中的 Appium 启动脚本启动 Appium 时,Appium 服务器正确启动并 运行。
但是,问题是我需要使用相同的 shell 脚本启动 Android 模拟器。由于 Appium 服务器 运行s 在后台,下一个启动模拟器的 shell 命令不会影响并且 jenkins 构建失败。所以我需要通过 Shell Jenkins build step
中的脚本并行 运行 Appium 服务器和 Android 仿真器。
请同时提供运行两个脚本的解决方案。
也许使用 parallel
,例如:
node{
stage('Tests') {
parallel(appium: {
//first script
}, emulator: {
//second script
})
}
}
我通过 Jenkins 构建步骤中的 shell 脚本将 Appium 服务器和 Android 仿真器并行设置为 运行。
我在 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
睡眠命令使命令进入睡眠状态或等待模拟器初始化,appium 服务器并行检测设备。
我想在 Jenkins 中启动 Appium 服务器进行自动化测试,并通过命令行启动 Emulator。当我通过 jenkins build step
中的 shell 命令中的 Appium 启动脚本启动 Appium 时,Appium 服务器正确启动并 运行。
但是,问题是我需要使用相同的 shell 脚本启动 Android 模拟器。由于 Appium 服务器 运行s 在后台,下一个启动模拟器的 shell 命令不会影响并且 jenkins 构建失败。所以我需要通过 Shell Jenkins build step
中的脚本并行 运行 Appium 服务器和 Android 仿真器。
请同时提供运行两个脚本的解决方案。
也许使用 parallel
,例如:
node{
stage('Tests') {
parallel(appium: {
//first script
}, emulator: {
//second script
})
}
}
我通过 Jenkins 构建步骤中的 shell 脚本将 Appium 服务器和 Android 仿真器并行设置为 运行。
我在 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
睡眠命令使命令进入睡眠状态或等待模拟器初始化,appium 服务器并行检测设备。