- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个使用 Maven 设置的 Java 项目,我正在使用 Cucumber 和 jUnit 对其进行测试。
也许我遗漏了什么,但有没有办法设置我的 Cucumber 测试运行器来自动运行 jUnit 测试以及我的 Cucumber 功能?如果不必运行两个单独的测试套件,并使用 mvn test
自动测试所有内容,那就太好了。
目前,当我指定 @RunWith(Cucumber.class)
时,它只查找 .feature
文件并忽略所有其他测试。
这是我的测试文件结构:
└── test
├── java
│ ├── TestRunner.java
│ └── com
│ └── myname
│ └── server
│ ├── GlobalHooks.java
│ ├── HTTPRequestsSteps.java
│ └── unitTests
│ ├── RequestHandlerTests.java
│ └── ServerTests.java
└── resources
└── cucumber
├── ... cucumber features here
还有我的测试运行器,它目前只查找 .feature
文件。
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.assertEquals;
@RunWith(Cucumber.class)
@CucumberOptions(plugin={"pretty"}, glue="com.rnelson.server", features="src/test/resources")
public class TestRunner {
}
我一直在寻找无济于事,所以任何帮助将不胜感激。谢谢!
最佳答案
这个 Becca 怎么样:
来自 cucumber 官方文档:
JUnit Runner
The JUnit runner uses the JUnit framework to run Cucumber. All you need is a single empty class with an annotation:
package mypackage;
import cucumber.api.junit.Cucumber;
import org.junit.runner.RunWith;
@RunWith(Cucumber.class)
public class RunCukesTest {
}
You can run this test in the same way you run your other JUnit tests, using your IDE or your build tool (for example mvn test).
此外,这可能对您有用:
http://www.hascode.com/2014/12/bdd-testing-with-cucumber-java-and-junit/
在这里,我正在做完全相同的事情,cucumber 运行 Junit 并将产生结果,xml Junit 报告和 html Cucumber 报告,只需单击一下我们的 Jenkins 作业...
如果您的意思是您还想将测试作为 JUnit 测试运行,则不能将 Junit 注释与 Cucumber 注释结合使用。但是您可以轻松地将这两个类分开,然后以“mvn test”目标运行它们..
最后一件事,我认为这是最后的解决方案,但它应该可以工作,您也可以直接从代码调用 Junit 测试,但这将是一个非常肮脏且没有标准的解决方案...
JUnitCore junit = new JUnitCore();
Result result = junit.run(testClasses);
清楚了吗? :) 或者您的需求可能有所不同?
关于java - 有没有办法用我的 Cucumber 测试运行器运行常规的 jUnit 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37815634/
我是一名优秀的程序员,十分优秀!