运行测试代码后,是否有某种方法可以回滚redis中的数据。 我使用Spring Boot 2开发了一个Java Web项目。
我知道Redis不提供回滚操作。
因此,在测试中使用其他Redis(例如某些嵌入式Redis)可以确保测试代码不会更改Redis数据。并使模拟的Redis客户端首先在测试Redis中获取数据,如果没有数据,则从原始Redis获取数据。 可行吗?
有没有现成的程序包实现此功能?
还是有任何更简单的回滚方法?
答案 0 :(得分:0)
首先,您应该在条款上保持清晰。您正在进行 real (窄)单元测试,然后将您的测试代码与任何“真实”资源(例如数据库,文件系统或远程服务器)绝对解耦 。换句话说:然后您就可以模拟出这种依赖性。
否则,您正在进行功能测试。而且这里有太多选择无法给出有意义的答案。一个示例是Redis Mock。
但是正如所说:真正的答案是您可以清楚自己的要求。您应该直接在被测(单个)类上进行较低级别模拟的单元测试。