@CucumberOptions中的路径可以在Idea中使用,或者mvn验证,但不能同时使用两者

时间:2016-02-03 17:27:51

标签: java maven intellij-idea cucumber

我在测试套件之前有以下声明:

@CucumberOptions(features = "src/test/resources/", plugin = {"pretty",
    "json:target/cucumber.json"})

如果我从Idea中运行该文件,这是有效的,但是如果我从命令行运行mvn verify则它不起作用。

如果我将其更改为

@CucumberOptions(features = "../src/test/resources/", plugin = {"pretty",
    "json:target/cucumber.json"})

...它适用于mvn verify但不适用于Idea。我可以吃蛋糕吗?

1 个答案:

答案 0 :(得分:0)

你也可以吃你的傻瓜。如果您有一个标准布局的Maven项目,并且所有Cucumber功能都在src/test/resources中,那么通过完全省略features来运行测试应该都可以。

如果您实际上在非标准位置拥有Cucumber功能,例如在父Maven项目中,您可以使命令行使用../src/test/resources,并更改Run/Debug configuration的工作目录到任何正确解析相对路径的目录。您可以针对特定配置或默认配置对其进行更改,以便通过右键单击自动生成的任何配置生效。

或者,您还应该能够使用src/test/resources并设置maven-surefire-plugin的{​​{3}},但最好让IDE向命令行方向弯曲,反之亦然。