如果有依赖关系,则TestNG侦听器将不运行

时间:2019-06-28 19:57:15

标签: testng maven-3

我在Project A中定义了一组侦听器,作为其来源的一部分,包括对这些注释的测试。

当我将Project A用作对Project B的项目依赖项时,即使在使用它们并将所有内容编译时必须将它们包含在测试类中时,也根本不会调用这些注释。

有什么主意要怎么做吗?

请参阅示例项目here

1 个答案:

答案 0 :(得分:1)

TestNG按设计工作。

您在ProjectA中添加的侦听器是通过surefire插件。通过surefire插件添加的条目在下游项目(例如ProjectB)中不会有任何作用。

如果需要该功能,则需要在ProjectB中明确执行以下操作之一

  • 使用<listeners>标签(或)
  • 使用ServiceLoader方法。请参阅here

PS:由于您的侦听器是org.testng.IAnnotationTransformer的实现,所以不能使用@Listeners批注连接此侦听器。