2012-09-10 90 views
0

我是JUNIT 4的新手,我想寫一些代碼,如測試套件從excelsheet中獲取輸入,並基於輸入的測試套件調用不同的測試用例。根據JUNIT 4,我們可以在@SuiteClasses({ ParameterSampleTest.class,SampleJUnitTest.class })中定義所有測試用例,但這是我們預定義測試用例的時候。但在這裏我想使用custome JUNIT亞軍,根據輸入做出決定?有人可以幫助解決這個問題嗎?我們可以在JUNIT 4中編寫自定義測試套件嗎?

@RunWith(Suite.class) 
public class AllTests { 
    public static TestSuite suite() { 
     TestSuite suite = new TestSuite(); 
     suite.addTest(new JUnit4TestAdapter(ParameterSampleTest.class)); 
     suite.addTest(new JUnit4TestAdapter(SampleJUnitTest.class)); 
     return suite; 
    } 
} 

感謝, Priyank沙阿

+0

你面臨的錯誤是什麼? – SiB

+0

我正面臨下面的錯誤... java.lang.Exception:類'com.example.junittest.AllTests'必須有一個SuiteClasses批註 –

+0

dublicate of http://stackoverflow.com/questions/7639353/how-to-define -junit-method-rule-in-a-suite – msangel

回答

0

這應該工作...

@RunWith(Suite.class) 
public class AllTests { 
public static TestSuite suite() { 
     TestSuite suite = new TestSuite(); 
     //if(your logic based decision) { 
      suite.addTest(new JUnit4TestAdapter(ParameterSampleTest.class)); 
     //} 
     suite.addTest(new JUnit4TestAdapter(SampleJUnitTest.class)); 
     return suite; 
    } 
} 
+0

我收到錯誤:java.lang.Exception:類'com.example.junittest.AllTests'必須有一個SuiteClasses註釋 –

0

您可以實現自己的測試運行。這並不困難。您只需創建延伸org.junit.runner.Runner的類並實施其getDescription()run()方法。跑步者可以根據其業務邏輯找到子案例並運行它們。

+0

嗨Alex,根據您的意見我寫下來的代碼..但它現在拋出一個錯誤 –

相關問題