在测试代码运行后,有什么方法可以回滚redis中的数据。 我使用 spring boot 2 开发了一个 java web 项目。
我知道redis没有提供回滚操作
所以在测试中使用另一个redis(比如一些嵌入式redis)可以确保测试代码不会改变redis数据。并制作一个模拟的 redis 客户端,首先在测试 redis 中获取数据,如果没有数据,则从原始 Redis 获取数据。 可行吗?
有没有现成的包实现这个功能?
或者有什么更简单的回滚方式?
最佳答案
首先,您应该清楚条款。要么你正在做一个真实(狭窄的)单元测试,然后你绝对解耦你的被测代码与任何“真实”资源,例如数据库或文件系统或远程服务器.换句话说:然后你模拟出这样的依赖关系。
否则,您正在进行功能 测试。而且这里的选项太多了,无法给出有意义的答案。一个例子是 Redis Mock .
但如前所述:真正的答案是您清楚自己的要求。您应该直接在被测(单个)类上进行较低级别的模拟单元测试。
关于java - 完成java测试代码后有什么方法可以回滚redis数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54420612/