【发布时间】:2020-01-03 16:15:45
【问题描述】:
我一直在使用 Spring,我遇到了 spring 提供的 @DirtiesContext 注解。当您想在运行每个方法之前刷新应用程序上下文(当然以牺牲性能为代价)时,在每个方法上使用它都是有意义的,但是使用 @DirtiesContext 注释测试 class 到底意味着什么?举个例子会很有帮助。
【问题讨论】:
-
你的意思是注释类而不是单个方法?如果是这样,类级别的注释(至少在 Spring 世界中)往往意味着“将此注释应用于所有方法”。
-
是的。你什么时候用@DirtiesContext 注释你的类?它的 classMode 属性的值默认为 AFTER_CLASS。究竟是什么意思?
-
AFTER_CLASS 表示该上下文在类中的所有测试运行后被标记为脏,因此只有在运行后才被销毁。
-
谢谢劳尔!这有帮助。还有一件事。如果我们根本不指定这个注解会有什么不同?
-
@Kunalgupta,我添加了对您其他评论的回复:)