2017-07-17 61 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方法集由''标签(或)''标签决定。所以如果一个特定的方法甚至没有被包含在集合中,那么方法选择器就不能强制它被包含在内。希望这是有道理的。为了克服这个问题,你可以使用非常贪婪的''条目。 –

相关问题