没有嘲笑MongoRepository

时间:2018-01-30 15:28:12

标签: spring spring-mvc spring-boot spring-data mockito

我有以下配置

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootApplication(scanBasePackageClasses= {})
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes= {})
@ActiveProfiles("local")

我想在不模仿MongoRepository调用的情况下运行JUnit测试,但它会自动模拟MongoRepo调用并返回null。他们是一个解决方法吗?

1 个答案:

答案 0 :(得分:0)

首先,您应该决定要执行哪种测试,

  1. 单元测试
  2. 整合测试
  3. 如果您正在进行单元测试,则应为每个层编写单独的测试用例

    控制器层 - 使用mockmvc和模拟服务层调用
    服务层 - 这里有两个选项,你可以模拟存储库调用,或者你可以在内存数据库中使用一些(如Fongo)并在测试之前放入一些数据并进行测试。

    如果要一起测试所有图层并使用真实数据库,则应编写集成测试。