在eclipse中,使用JUnit 4,您可以右鍵單擊一個項目或程序包,然後單擊Run作爲JUnit Test,它將運行該分組中的所有JUnit測試。有沒有辦法在代碼中做同樣的事情?如何在代碼中運行整個JUnit測試套件
3
A
回答
8
您可以在JUnit中使用的軟件包,如JUnitCore這樣的:
public static void main(String[] args){
List tests = new ArrayList();
tests.add(TestOne.class);
tests.add(TestTwo.class);
for (Class test : tests){
runTests(test);
}
}
private static void runTests(Class test){
Result result = JUnitCore.runClasses(test);
for (Failure failure : result.getFailures()){
System.out.println(failure.toString());
}
}
1
JUnit提供了test Suite。試試看。
[...]
public class TestCaseA {
@Test
public void testA1() {
// omitted
}
}
[...]
public class TestCaseB {
@Test
public void testB1() {
// omitted
}
}
[...]
@RunWith(value=Suite.class)
@SuiteClasses(value = {TestCaseA.class})
public class TestSuiteA {
}
[...]
@RunWith(value=Suite.class)
@SuiteClasses(value = {TestCaseB.class})
public class TestSuiteB {
}
[...]
@RunWith(value = Suite.class)
@SuiteClasses(value = {TestSuiteA.class, TestSuiteB.class})
public class MasterTestSuite{
}
6
使用JUnit套房:
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
@RunWith(Suite.class)
// Put your Test Case Class here
@Suite.SuiteClasses({
JunitTest1.class,
JunitTest2.class,
JunitTest3.class
})
public class JunitTestSuite {}
然後創建運行它主要方法。
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
public class JunitTestSuiteRunner {
public static void main(String[] args) {
Result result = JUnitCore.runClasses(JunitTestSuite.class);
for (Failure fail : result.getFailures()) {
System.out.println(fail.toString());
}
if (result.wasSuccessful()) {
System.out.println("All tests finished successfully...");
}
}}
相關問題
- 1. 運行JUnit測試套件在Eclipse
- 2. 如何在Ant中運行JUnit測試套件?
- 3. 使用Maven運行JUnit測試套件
- 4. 如何在另一個套件中嵌入JUnit測試套件
- 5. 如何在多個測試類中運行一組junit測試?
- 6. 如何從命令行運行Eclipse java JUnit測試套件? (windows)
- 7. 在任何junit測試運行之前執行一些代碼
- 8. 如何在NetBeans中調試多個JUnit測試套件?
- 9. 如何將JUnit 4測試添加到JUnit 3測試套件
- 10. JUnit @Parameterized函數在測試套件中的@BeforeClass之前運行?
- 11. 如何在SCons下運行JUnit測試?
- 12. 在套件級別上並行運行JUnit測試?
- 13. gradle測試任務如何運行特定的junit測試套件?
- 14. 我如何控制我這個JUnit測試類在JUnit測試運行
- 15. 在JUnit 5中,如何在所有測試之前運行代碼
- 16. 運行兩個JUnit測試套件的不相交
- 17. Spring工具套件中的JUnit:運行測試中的錯誤
- 18. 如何使用Ant在類別/套件中運行所有JUnit測試?
- 19. jUnit:如何過濾在多個套件中發現的測試
- 20. 如何在Eclipse中運行Junit中的單個測試用例?
- 21. 如何在運行框架中運行JUnit測試用例2.3.2
- 22. 如何在Visual Studio代碼中運行所有測試代碼
- 23. 想使用pom.xml運行ant項目中的junit測試套件
- 24. 如何執行在JUnit測試測試多個文件
- 25. 並行運行JUnit測試
- 26. 如何在Maven測試文件不在mavenise結構中運行Junit測試
- 27. 從另一個JUnit測試類運行JUnit測試類
- 28. 如何在不同的Maven項目中將多個Junit測試套件運行到單個測試套件並使用maven命令運行?
- 29. 在JUnit測試中重複代碼
- 30. JUnit套件合同測試
我的很多測試都有相同的名稱,所以這個選項不會有效。我真的在尋找具有與爲項目或包單擊「Run as JUnit Test」相同功能的代碼。 – meanderingmoose
這種方法要求您提及所有類。 –