【发布时间】:2019-11-19 19:00:02
【问题描述】:
我正在编写一个使用 ApplicationContext 的集成测试。为了模拟数据库故障,我将 @MockBean 用于 DAO 层。 每个测试用例都使用@MockBean 引用,并在内存中引用同一个对象,并通过调试进行双重检查)。 但是,当我对测试套件中的每个测试用例需要不同的 mockbean 行为时。
当第一个测试用例在第二个测试用例中使用模拟存根运行时,我发现了一个奇怪的情况,因此它返回了不正确的结果。
我希望每个测试用例都使用新创建的bean,以避免并发修改共享资源。
是否可以将@MockBean 设为原型?
【问题讨论】:
-
尝试为您的问题添加更多上下文。你用
@MockBean做什么?改用@Mock可能会解决您的问题。 -
我需要设置 ApplicationContext 因此@Mock 在这里不适用
标签: java spring concurrency mockito mockmvc