2017-07-17 58 views
0

我嘗試使用從外部文件讀取的testng組。它給出了一個編譯時錯誤,指出它只能使用字符串常量。它看起來像下面這樣:我可以使用從文件中讀取的testng組嗎?

@Test(dataProvider="myData", DataProviderClass=MyDataProvider.class, groups=MyGroups.getGroups()) 
public void test() 
{ 
//... 
} 

我不能用TestNG做到以上。那麼有沒有辦法做到這一點?

回答

1

也許你可以嘗試圍繞接口構建一個TestNG作爲監聽器提供的接口,並且在其org.testng.IAnnotationTransformer#transform方法中可以動態地注入組信息。您的transform()實施可能會得到豐富,從而可以從外部數據源讀取組信息。這應該可以解決你的問題。

+0

是否可以使用此變換器將一個組設置爲未選擇運行的testng方法,並且還包括運行方法。 –

+0

不是。我懷疑這是否可以做到。組基本上都是方法選擇器,但是應該使用什麼樣的TestNG方法集由''標籤(或)''標籤決定。所以如果一個特定的方法甚至沒有被包含在集合中,那麼方法選擇器就不能強制它被包含在內。希望這是有道理的。爲了克服這個問題,你可以使用非常貪婪的''條目。 –

相關問題