有时您可能只需要在运行时更改套件 xml 中的套件(或)测试标记,而无需更改套件文件的内容。
一个典型的例子是尝试利用您现有的套件文件并尝试使用它来模拟“被测应用程序”上的负载测试。至少,您最终会多次复制
TestNG 允许您在运行时通过侦听器更改套件 xml 文件中的套件(或)测试标记。您可以通过提供实现IAlterSuiteListener的侦听器来实现此目的。请参阅监听器部分以了解监听器。
这是一个显示套件名称如何在运行时更改的示例:
public class AlterSuiteNameListener implements IAlterSuiteListener {
@Override
public void alter(List<XmlSuite> suites) {
XmlSuite suite = suites.get(0);
suite.setName(getClass().getSimpleName());
}
}
只能通过以下任一方式添加此侦听器:
- 通过套件 xml 文件中的
标记。 - 通过服务加载器
无法使用@Listeners注释将此侦听器添加到执行中。