如果推送新版本,让 Jenkins 强制退出黄瓜脚本
Have Jenkins force quit cucumber script if new build is pushed
所以我使用 Ruby/Cucumber 和 Appium 运行 在我们的 Jenkins 服务器上进行每次构建后进行自动化测试。
基本上,我有一项工作是在每次构建成功后 运行 设置我们的回归套件。当我的黄瓜测试 运行ning 并且新构建成功时,我的问题就出现了。
目前 Jenkins 将开始使用 cucumber 脚本进行一系列新的测试,但不会强制旧脚本退出。这导致我所有的黄瓜报告都显示多个假阴性。有没有办法规定 Jenkins 运行 一个在开始一组新测试之前退出 cucumber 的脚本?
非常感谢你能给我的任何帮助。如果您对我如何具体设置 Jenkins 有任何疑问,请直接提问,我会给您更详细的信息。
从技术上讲,Jenkins Job 将等待 1 个作业实例完成,直到它启动另一个作业。所以你不必担心在第一个构建完成之前开始另一个构建...
现在回答你的问题,如果要开始一组新的测试用例,如何终止 old/existing 个测试用例。
我建议在触发实际测试之前有一个清理脚本 运行,我猜你的测试将使用 rake 或直接 cucumber 命令触发。所以在这发生之前,执行 cleanup.sh
将执行以下操作:
1) 重启appium服务器。
2) 杀死 运行ning ruby 个进程。
3) 杀死 运行ning 黄瓜进程。
脚本应如下所示:
kill -9 $(ps -ef | grep \[a]ppium | awk '{print }')
kill -9 $(ps -ef | grep \[r]uby | awk '{print }')
kill -9 $(ps -ef | grep \[c]ucumber | awk '{print }')
# restart appium again
appium &
希望对您有所帮助!!如果您 运行 遇到问题,请在评论中告诉我。:)
所以我使用 Ruby/Cucumber 和 Appium 运行 在我们的 Jenkins 服务器上进行每次构建后进行自动化测试。
基本上,我有一项工作是在每次构建成功后 运行 设置我们的回归套件。当我的黄瓜测试 运行ning 并且新构建成功时,我的问题就出现了。
目前 Jenkins 将开始使用 cucumber 脚本进行一系列新的测试,但不会强制旧脚本退出。这导致我所有的黄瓜报告都显示多个假阴性。有没有办法规定 Jenkins 运行 一个在开始一组新测试之前退出 cucumber 的脚本?
非常感谢你能给我的任何帮助。如果您对我如何具体设置 Jenkins 有任何疑问,请直接提问,我会给您更详细的信息。
从技术上讲,Jenkins Job 将等待 1 个作业实例完成,直到它启动另一个作业。所以你不必担心在第一个构建完成之前开始另一个构建...
现在回答你的问题,如果要开始一组新的测试用例,如何终止 old/existing 个测试用例。
我建议在触发实际测试之前有一个清理脚本 运行,我猜你的测试将使用 rake 或直接 cucumber 命令触发。所以在这发生之前,执行 cleanup.sh
将执行以下操作:
1) 重启appium服务器。
2) 杀死 运行ning ruby 个进程。
3) 杀死 运行ning 黄瓜进程。
脚本应如下所示:
kill -9 $(ps -ef | grep \[a]ppium | awk '{print }')
kill -9 $(ps -ef | grep \[r]uby | awk '{print }')
kill -9 $(ps -ef | grep \[c]ucumber | awk '{print }')
# restart appium again
appium &
希望对您有所帮助!!如果您 运行 遇到问题,请在评论中告诉我。:)