开发者学堂课程【ALPD 云架构师系列-云原生 DevOps36计:好的测试应该怎样】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/82/detail/1291
好的测试应该怎样
内容介绍:
一、测试原则
二、持续测试的反模式
一、测试原则
好的测试应该怎样是什么样子的?有几个简单的原则可以了解一下。
原则1:测试:应该锚定在需求上,因为软件是为了描述需求增量,如果说描定在实线上就成了白盒测试,只有描定在需求上,才是黑盒测试;
原则2:在测试集上描述需求,在 testsweat 上,要给相应的一个 tag,由此知是基础类型的还是长尾或者其他类型的;
原则3:测试集主要是针对哪一个特性去迎接测试的,每个测试用例只验证一个概念,也就是测试用例,不要一个测试用例验证两个、多个概念,可能会造成挂了时不知道是哪个概念导致的问题,在这个基础上是单一原则;
原则4:另外一个测试用例的名称应该清晰的表达目的,就是和描述在需求上是类似的,就像 letdog 的概念,通过测试用例可以用来描述需求文档;
原则5:测试用例之间的不要相互依赖,因为一个挂了其他的也会跟着挂,会造成找不出原因的结果;
总结,FRIST 原则,在执行的时候,第一快速,第二隔离,第三可重复,第四自验证,第五及时。
二、持续测试的反模式
持续测试的反模式,比如自动化生成单元测试,写单元测试觉得太花时间,然后自动化的生成,根据实现代码来生成一份单元测试,这是非常愚蠢的行为,因为均匀的单元测试生成出来均匀的生产代码,生成出来的单元测试的生产代码有问题,那生成出来单元测试也有问题;白盒单元测试是追求覆盖率和追求逻辑实现的,实际上应该验证需求和追求高覆盖率,追求高覆盖率就会写很多白盒,对着代码写测试。
追求高自动化率,比如分子、分母同时增加,把容易做成自动化的做成自动化,会造成很多测试自动化用例行成不稳定和重复验证。做质量保障要想到一些事情,做质量保障是一个完整体系的过程,从测试的角度分几个象限,给测试分了类并且分布在整个软件交互的过程当中做。质量是团队里所有人的事情,质量在去做事情的时候需要通过相应的策略去做,比如应该去成本和质量的 balance 去做这件事情。