我想在使用大量的參數化對象的其中一個類重命名的測試方法。重命名參數TestMethod的
例如,如果我有一個測試方法設置像這樣:
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
static class data_class{
public String name;
public String two;
public data_class(String name, String two){
this.name = name;
this.two = two;
}
}
@DataProvider(name = "prov1")
public static Object[] prov1(){
return new Object[] { new data_class("one", "one"), new data_class("two", "two") };
}
@Test(dataProvider="prov1")
public void testApp(data_class input)
{
System.out.println(String.format("Name: %s Two: %s", input.name, input.two));
}
}
測試運行的輸出(在Eclipse,萬無一失XML報告是相似的)示出了該輸出,通知方法名是testApp與類的對象ID作爲唯一的區別:
我要輸出的自定義字符串作爲兩種測試方法的名稱或參數,以便在詹金斯,我可以很輕鬆地看到測試案例打破了試驗。
我試過創建一個註解監聽器,它實現了IAnnotationTransformer
,但是當我執行annotation.setTestName("test")
時,它對結果輸出沒有任何影響。
我該如何做到這一點?
你在'data_class'上試過'toString()'impl了嗎?另外,'data_class'不是最大的類名。按照慣例,java中的類名是大寫,CamelCase。例如:'MyClass' – Taylor