SpringClassRule / SpringMethodRule实际上做了什么?

时间:2017-06-29 15:32:06

标签: spring-boot integration-testing rule

在集成测试课程中,我遇到了以下几行代码:

    @ClassRule
    public static final SpringClassRule SPRING_CLASS_RULE = new SpringClassRule();

    @Rule
    public final SpringMethodRule springMethodRule = new SpringMethodRule();

当我尝试导航到班级时(我使用Intellij Idea),我得到了“找不到声明去”'。当我试图找到用法时,我得到了“没有在项目中找到用法”#39; 我熟悉规则的概念。但仍然不明白这两件事做了什么。 我查看了这个页面:https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ 没有信息。

1 个答案:

答案 0 :(得分:6)

这些不是Spring Boot特定的注释,而是来自Spring Framework本身,允许在不使用SpringRunner的情况下使用Spring上下文等。

Javadoc,http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/test/context/junit4/rules/SpringClassRule.html

这里可以找到一个具体的例子,

http://eddumelendez.github.io/blog/2015/08/01/spring-4-2-0-springclassrule-and-springmethodrule/