在MongoRepository上没有嘲笑



>我有以下配置

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

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

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

  1. 单元测试
  2. 集成测试

如果你正在做单元测试,你应该为每个层编写单独的测试用例

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

如果你想一起测试所有层并使用真实的数据库,那么你应该编写集成测试。

相关内容

  • 没有找到相关文章

最新更新