JUnit getAnnotation返回null

时间:2019-04-25 12:51:02

标签: java junit junit4

我想运行一个简单的Rule,如果它具有特定的批注,它将尝试重新运行测试。具体来说,它将通过从cusotm读取trys int尝试根据用户的需要重新运行测试多次。注释t。

这是我创建的cusotm批注: 导入java.lang.annotation.ElementType; 导入java.lang.annotation.Target;

   CS4034: The ‘await’ operator can only be used within an async lambda expression. Consider marking this lambda expression with the async modifier.

这是我创建的自定义规则:

@Target(ElementType.METHOD)
public @interface Retry {
    int tries();
}

问题是,每当我使用自定义注释和自定义规则运行测试时,它始终只运行一次。我检查了一下,无论如何,getAnnotation(....)始终返回null —如果cusotm注释为指定或否。

1 个答案:

答案 0 :(得分:3)

您的注释将一直保留到运行时。 使用@Retention(RetentionPolicy.RUNTIME)