【问题标题】:Same instances between tests测试之间的相同实例
【发布时间】:2019-04-03 16:13:10
【问题描述】:

我写了两个配置了这个注解的测试(我的意思是不同的类):

@RunWith(SpringRunner.class)
@SpringBootTest

当我单独运行它们时 - 一切正常 当我使用 gradle 中的“测试”任务同时运行它们时,魔法就会发生。一个测试创建一个实例,然后以某种方式将其转移到另一个类。 有没有人遇到过这样的事情?

【问题讨论】:

  • 如果你在谈论 ApplicationContext(你称之为“实例”):这是 Spring Test 的默认行为:ApplicationContext 在测试之间被重用。在此答案中查看更多详细信息:stackoverflow.com/a/44181188/6899896
  • @M.Ricciuti,谢谢。不知道这个。

标签: integration-testing spring-test spring-boot-test


【解决方案1】:

您可以使用@DirtiesContext 告诉测试类将修改ApplicationContext。因此,任何其他后续测试类都不会接受该修改

@DirtiesContext
@RunWith(SpringRunner.class)
@SpringBootTest

【讨论】:

    猜你喜欢
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-30
    • 2013-07-20
    • 2023-04-05
    • 2018-12-21
    相关资源
    最近更新 更多