【问题标题】:Reading TestNG annotation parameter value from Properties file从属性文件中读取 TestNG 注释参数值
【发布时间】:2013-09-11 10:51:12
【问题描述】:

我正在使用 TestNG。我需要从Properties 文件中读取"invocationCount" 的值。 我在下面尝试过,但出现编译错误。有人可以帮我解决这个问题吗?

public static final int TC=Integer.parseInt(p.getProperty("threadcount"));

@Test(threadPoolSize=10,invocationCount=TC)
public void someMethod { }

编译错误:注解属性Test.invocationCount的值必须是常量表达式

【问题讨论】:

  • 顾名思义,Java 中的注解值必须是常量表达式...
  • 那么,是不是不能从属性文件中读取呢?
  • 签入 5.15 的文档:testng.org/doc/documentation-main.html - 您可以执行类似annotation.setInvocationCount(TC); 的操作。
  • 你能详细说明一下吗?我需要把上面的语句放在哪里?方法里面?

标签: java properties testng


【解决方案1】:

Srikanth,您需要实现 Testng 公开的 IAnnotationTransformer。您可以编写代码来读取您的属性文件并设置当前在执行转换方法时调用的测试的调用次数。 This 举个例子。

将您的 Iannotationtransformer 实现指定为测试中的侦听器,无论是在您的 suite.xml 中还是在您的类级别,使用 @Listeners 注释作为详细说明 here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-09
    • 1970-01-01
    • 2011-04-24
    • 1970-01-01
    • 2019-12-06
    • 1970-01-01
    相关资源
    最近更新 更多