我使用exec插件将Cucumber JVM称为maven生命周期的一部分。但是,Cucumber似乎在终止时使用System.exit(),因此它过早地停止了我的maven运行。这迫使我将它分叉到一个单独的进程,但是当我尝试调试测试时会出现问题。
有没有办法礼貌地要求Cucumber JVM在终止时不使用System.exit()?
答案 0 :(得分:3)
(我假设有一个很好的理由不使用junit runner&你正在调用cucumber.api.cli.Main
,如果任何一个假设是假的,请澄清问题)
考虑到cucumber.api.cli.Main
约为4行代码,最简单/最方便的解决方案是编写自己的主方法,即没有System.exit
调用的黄瓜克隆。
另外你可以在他们的github网站上提出问题和/或向他们的Main
类发送带有所需调整的pull请求(例如,如果已经设置了某些系统属性,请不要执行system.exit )。
答案 1 :(得分:1)