我是JUnit的新手。我正在努力獲得類似於我如何在JUnit中獲得Testname/Test狀態
類名/函數名稱/狀態/說明的輸出方式。
我想,除了FrameworkMethod使用Rule之外,沒有其他方法可以獲得成功的測試名稱。是否可以將規則設置爲在JUnitCore/textui.Thx幫助下運行的套件。
編輯: - 我試過用Junit 4.9b2 testwatchman,但執行套件不適合我。任何幫助,將不勝感激。
@RunWith(Suite.class)
@SuiteClasses({testclass1.class, testclass2.class})
public class junitCheck {
private static String watchedLog;
@Rule
public MethodRule watchman= new TestWatchman() {
@Override
public void failed(Throwable e, FrameworkMethod method) {
watchedLog+= method.getName() + " " + e.getClass().getSimpleName()
+ "\n";
}
@Override
public void succeeded(FrameworkMethod method) {
watchedLog+= method.getName() + " " + "success!\n";
}
};
}
public class testclass1 {
@Test
public void add()
{
Assert.assertEquals(4,2+3);
}
}
public class testclass2 {
@Test
public void add1()
{
Assert.assertEquals(4,2+2);
}
}
如果我想設置一個suitelevel規則,那該怎麼辦?那還沒有實現ryt? – Appunu
看起來類/套件級規則即將出現在JUnit 4.9中:http://blog.schauderhaft.de/2011/07/24/rules-in-junit-4-9-beta-3/ – pholser