草庐IT

java - JUnit 参数化测试 : how do I run only 1 specific test from IntelliJ/Eclipse?

我有一个@Parameterized生成50个测试的junit测试:@RunWith(Parameterized.class)publicclassNurseRosteringSolveAllTurtleTest...{@Parameterized.Parameters(name="{index}:{0}")publicstaticCollectiongetSolutionFilesAsParameters(){return...//returns50Files.}publicNurseRosteringSolveAllTurtleTest(FileunsolvedDataFile){

java - 在 Junit 4 中运行所有测试

我希望能够以编程方式运行项目中的所有测试。我知道Eclipse有一个“作为JUnit测试运行”配置,它以某种方式获取项目中的所有测试并运行它们。有什么方法可以让我以编程方式获取测试列表并运行它们?或者有什么好方法可以构建一个包含所有测试用例的测试套件,而无需手动列出每个测试用例(全部700多个)?我在Eclipse中尝试了“New...->TestSuite”选项,但这似乎只适用于JUnit3,通过从TestCase扩展来识别测试测试类是JUnit4,所以它们唯一的区别特征是注释,没有命名约定,没有从TestCase继承。提前致谢! 最佳答案

java - 在 Junit 4 中运行所有测试

我希望能够以编程方式运行项目中的所有测试。我知道Eclipse有一个“作为JUnit测试运行”配置,它以某种方式获取项目中的所有测试并运行它们。有什么方法可以让我以编程方式获取测试列表并运行它们?或者有什么好方法可以构建一个包含所有测试用例的测试套件,而无需手动列出每个测试用例(全部700多个)?我在Eclipse中尝试了“New...->TestSuite”选项,但这似乎只适用于JUnit3,通过从TestCase扩展来识别测试测试类是JUnit4,所以它们唯一的区别特征是注释,没有命名约定,没有从TestCase继承。提前致谢! 最佳答案

java - Android Studio - 使用 Junit 4.12 “!!! JUnit version 3.8 or later expected:”

尝试了this上的建议发布,但我仍然收到错误:!!!JUnitversion3.8orlaterexpected:java.lang.RuntimeException:Stub!atjunit.runner.BaseTestRunner.(BaseTestRunner.java:5)atjunit.textui.TestRunner.(TestRunner.java:54)atjunit.textui.TestRunner.(TestRunner.java:48)atjunit.textui.TestRunner.(TestRunner.java:41)Processfinishedw

java - Android Studio - 使用 Junit 4.12 “!!! JUnit version 3.8 or later expected:”

尝试了this上的建议发布,但我仍然收到错误:!!!JUnitversion3.8orlaterexpected:java.lang.RuntimeException:Stub!atjunit.runner.BaseTestRunner.(BaseTestRunner.java:5)atjunit.textui.TestRunner.(TestRunner.java:54)atjunit.textui.TestRunner.(TestRunner.java:48)atjunit.textui.TestRunner.(TestRunner.java:41)Processfinishedw

java - Junit @Rule 和 @ClassRule

我正在编写使用TemporaryFolder规则的JUnit4测试。似乎它适用于@Rule和@ClassRule。Junit@Rule和@ClassRule有什么区别?为什么我应该使用一个而不是另一个? 最佳答案 当你在一个类中有多个测试方法时,区别就变得很明显了。@ClassRule的before()方法在任何测试方法之前运行。然后运行所有的测试方法,最后是规则的after()方法。因此,如果您在一个类中有五个测试方法,before()和after()仍然只会运行一次。@ClassRule适用于静态方法,因此具有其中固有的所有限制

java - Junit @Rule 和 @ClassRule

我正在编写使用TemporaryFolder规则的JUnit4测试。似乎它适用于@Rule和@ClassRule。Junit@Rule和@ClassRule有什么区别?为什么我应该使用一个而不是另一个? 最佳答案 当你在一个类中有多个测试方法时,区别就变得很明显了。@ClassRule的before()方法在任何测试方法之前运行。然后运行所有的测试方法,最后是规则的after()方法。因此,如果您在一个类中有五个测试方法,before()和after()仍然只会运行一次。@ClassRule适用于静态方法,因此具有其中固有的所有限制

java - 使用 JUnit 的 @Parameterized 时,我可以让一些测试仍然只运行一次吗

这个问题在这里已经有了答案:Excludinganonparamtestinparameterizedtestclass(9个回答)关闭5年前.我在很多情况下使用@Parameterized来对多个排列进行测试。这工作得很好,并且使测试代码本身保持简单和干净。但是有时我希望某些测试方法仍然只运行一次,因为它们不使用参数,JUnit有没有办法将测试方法标记为“单例”或“运行-一次”?注意:这与在Eclipse中运行单个测试无关,我知道该怎么做:) 最佳答案 您可以使用Enclosedrunner构建您的测试。.@RunWith(Enc

java - 使用 JUnit 的 @Parameterized 时,我可以让一些测试仍然只运行一次吗

这个问题在这里已经有了答案:Excludinganonparamtestinparameterizedtestclass(9个回答)关闭5年前.我在很多情况下使用@Parameterized来对多个排列进行测试。这工作得很好,并且使测试代码本身保持简单和干净。但是有时我希望某些测试方法仍然只运行一次,因为它们不使用参数,JUnit有没有办法将测试方法标记为“单例”或“运行-一次”?注意:这与在Eclipse中运行单个测试无关,我知道该怎么做:) 最佳答案 您可以使用Enclosedrunner构建您的测试。.@RunWith(Enc

java - 如何从 JUnit 测试中运行 JMH?

如何使用JUnit测试在现有项目中运行JMH基准测试?官方文档建议制作一个单独的项目,使用Mavenshade插件,并在main方法中启动JMH。这是必要的吗?为什么推荐它? 最佳答案 我一直在使用JUnit在我现有的Maven项目中运行JMH,没有明显的不良影响。我无法回答为什么作者建议以不同的方式做事。我没有观察到结果的差异。JMH启动一个单独的JVM来运行基准测试以隔离它们。这是我的工作:将JMH依赖项添加到您的POM:org.openjdk.jmhjmh-core1.21testorg.openjdk.jmhjmh-gene