背景
Redis作为一个开源的、基于内存的数据结构存储器,可以用作数据库、缓存和消息中间件。redis最常用的就是缓存,可以缓解数据库压力;如果数据是从第三方接口请求获取,从而提升性能;本文主要介绍redis缓存机制测试思路及测试步骤
测试思路
测试的很大一部分工作是整理测试思路,即合理的测试点。根据实际经验总结redis测试点如下:
-
缓存时间设置合理性。缓存时间设置,需要根据数据更新的频次合理设置;缓存时间太长会导致用户访问到的数据一直是老的,缓存设置时间太短对数据库访问会比较频繁。所以最好调研清楚实际数据更新的频次,再去设置缓存时间
- 存储逻辑合理性。这个以两个维度去测试:
- 服务端或数据库返回数据正确性。返回异常,不应该缓存;返回数据正常,才缓存;
- 存储缓存时查询条件。比如要缓存歌曲信息,可以查询歌名缓存也可以查询歌手缓存歌曲list;根据业务实际需求确认。
- 缓存读取逻辑合理性。以下是比较合理的逻辑:
- 有缓存,优先读取缓存;
- 无缓存,请求接口或查数据库获取数据;并存储缓存
- 缓存更新逻辑
- 缓存失效后是否会更新缓存的内容
- 缓存内容
- redis缓存具体内容是否正确、格式(list、string)是否合理、实际每次缓存的数据数是否与需求一致
- 缓存数据重复
- 同样的数据触发保存缓存逻辑之后,应该只有一条在redis缓存中可以查到,重复缓存会浪费资源
测试步骤
确认未缓存数据->使用未缓存数据参数请求接口->使用同一数据,再次请求->第二次请求响应时长,应该比第一次明显要少;