对于黄瓜项目,网络上几乎每个参考文献都有一个单独的跑步者班级,班级中没有任何内容。似乎是浪费班级。 我的情况,以下是项目框架
RestTestContext.java
public class RestTestContext {
private Map<String, String> restParams = new HashMap<>();
public void setRestParams(Map<String, String> params) {
this.restParams.putAll(params);
}
public Map<String, String> getRestParams() {
return this.restParams;
}
}
接下来我有StepDefinitions.Java
还有一个
TestRunner.Java具有,
@RunWith(Cucumber.class)
@CucumberOptions(features = {"src/test/resources/features/"},
tags = {"@run"},
dryRun = false,
monochrome = true
)
public class TestRunner{
}
这当然很好。
现在我也可以通过如下修改RestTestContext.java
来做同样的事情
@RunWith(Cucumber.class)
@CucumberOptions(features = {"src/test/resources/features/"},
tags = {"@run"},
dryRun = false,
monochrome = true
)
public class RestTestContext {
private Map<String, String> restParams = new HashMap<>();
public void setRestParams(Map<String, String> params) {
this.restParams.putAll(params);
}
public Map<String, String> getRestParams() {
return this.restParams;
}
}
这使我没有一个空的类,只是为了通知JUnit如何运行。但是也要有一些有用的类主体。
问题:拥有单独的跑步者课程只是最佳实践吗?还是它也有助于其他因素?
答案 0 :(得分:0)
Afaik如果要使用JUnit运行Cucumber测试,则需要运行程序类。您可以检查documentation了解更多信息。
请注意,您还使用此类来指定@CucumberOptions
,告诉Cucumber&JUnit 如何运行测试。
请注意,您也可以从command line运行Cucumber。在这种情况下,您将不会使用JUnit。
最后,您还可以从IDE运行测试。如何执行,将取决于您所使用的IDE。您可以在documentation中找到有关Java IDE的信息。