今天想跟大家分享一个案例,关于一个测试场景引发的测试要点思考。
废话不多说,上菜!
情况介绍
某天,开发同事提交了一个功能优化单,大概情况就是:为了节省内存使用,开启了一个配置,配置项有自动切换、不切换和固定切换三种模式。当达到一定阈值阀门时,会将在内存临时存储的变量写入MySQL,使用完后即删。
我们假设配置模式是auto、no、yes。
这个功能优化的原因在于:存储的变量在大数据的情况下会占用很大的临时内存,造成内存浪费。而存入mysql后,内存使用会大大下降。
那么,针对这样的一个优化功能,我们可以怎么设计测试要点呢?或者说需要测试哪些呢?
一起看看
暂不说性能测试,我们单纯讨论下功能测试要点。
我想大家肯定会说:三个不同配置一定要测!这是必然的,我们得至少证明配置生效了不是。
那么我们先来看一看。
不同配置项测试
存在三个配置项auto、no、yes,那么我们依次测试。
首先测试no,不切换
该模式下,临时变量(假设为monitor)会存入内存。
因为无法检测区分monitor变量占用的内存变化(除非从代码层加入临时打印),所以对于no配置的测试我们重点在于监控日志打印(有该变量的输出),以及已有功能回归(确保不会因为新配置的引入导致故障的产生)。
总结:本次测试要点为已有功能的回归测试。
测试yes,切换
该模式下,临时变量monitor会存入mysql的某个表,且在使用完成后,该变量会清除。
对于此,我们能够很方便的从mysql观测到。因此我们的重点除了已有功能的回归测试外,还有变量存数据库,存入变量值的正确性,以及及时清除。
现在我邀请你进入我们的软件测试学习交流群,备注“入群”,大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。