测试 NG - 使用 setTestClasses() 传递参数
我正在使用以编程方式运行 Courier 类中包含的测试。
TestListenerAdapter tla = new TestListenerAdapter();
TestNG testng = new TestNG();
testng.setTestClasses(new Class[] { Courier.class });
testng.addListener(tla);
testng.run();
如何将参数传递给此类中包含的测试? 例如
testng.setTestClasses(new Class[] { Courier("parameter").class });
快递:
public class Courier {
@Parameter(passed parameter)
@Test
public void Courier_Test(String parameter){
System.out.println(parameter);
}
}
感谢您的帮助!
I'm using the programmatically approach to run tests included in the Courier class.
TestListenerAdapter tla = new TestListenerAdapter();
TestNG testng = new TestNG();
testng.setTestClasses(new Class[] { Courier.class });
testng.addListener(tla);
testng.run();
How is it possible to pass parameter to tests included in this class?
e.g.
testng.setTestClasses(new Class[] { Courier("parameter").class });
Courier:
public class Courier {
@Parameter(passed parameter)
@Test
public void Courier_Test(String parameter){
System.out.println(parameter);
}
}
Thanky for any help !
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一些想法:
即使您以编程方式运行测试,您也应该能够在
testng.xml
文件上调用 TestNG。像这样向文件添加参数(来自 文档):如果由于某种原因您没有使用 testng.xml 文件,则可以使用 DataProvider,作为测试类中的方法或作为静态类,具体取决于您需要执行的操作。下面的示例(也来自文档)。
类内的DataProvider:
外部类中的DataProvider:
A couple of ideas:
Even if you are running the tests programmatically, you should be able to invoke TestNG on a
testng.xml
file. Add parameters to the file like so (from the documentation):If for some reason you aren't using a testng.xml file, you can use a DataProvider, either as a method within the test class or as a static class, depending on what you need to do. Examples below (also from the documentation).
DataProvider inside the class:
DataProvider in external class: