SpringBoot Redis集成测试

时间:2018-04-24 08:15:11

标签: mysql spring-boot redis

我的申请包含MySQLSpringBoot

Redis用于使用spring缓存注释进行缓存。

现在,启动Redis等不是问题,因为我使用Docker compose动态分配容器进行测试。

但是,验证数据是否实际从Redis缓存中写入和读取的正确方法是什么?来自Mysql

2 个答案:

答案 0 :(得分:1)

在集成测试期间,您可以阻止客户端代码与MySQL数据库进行通信,以确保只使用Redis。
你没有确切地说明与MySQL数据库通信的确切方式,所以我不能给你一个具体的建议。

但是这里有一些想法:

  • 依赖于MySQL后端服务实现,该实现在调用任何方法时抛出异常
  • 关闭MySQL数据库
  • 使用空的MySQL数据库

答案 1 :(得分:0)

为了测试它,我从rest端点创建记录,然后我直接使用spring repository从db中删除它。然后,由于它被缓存,所以仍然可以通过缓存中的休息端点访问它,即使它不存在于db中。