小仙女讲软考(六):说说测试那些事儿
测试,顾名思义,当开发人员开发出系统后,你需要检查一下这系统的质量怎么样。
这有个栗子:现在有函数sum(a+b),如果结果≥0,则输出“a*b”;如果结果<0,则输出“a/b”。
*****************************************************************************************************
测试策略
*****************************************************************************************************
单元测试
对一个模块、一个函数或者一个类进行的测试。
比如:在例子中,需要对sum(a+b)、a*b、a/b三个模块分别进行测试
集成测试
将模块组合起来进行测试。
比如:在例子中,把这三个函数穿成串,按流程走一遍,输入各种合法、非法数值,看结果是否符合预期。
冒烟测试:
当开发人员修复了先前测试中发现的bug后,想知道这个bug的修复是否会影响到其他功能模块,要做的就是冒烟测试。
确认测试
软件的功能和性能是否如同用户所合理期待的那样。
α测试和β测试
前者是用户来我家,有开发者在后面记录错误;后者是去客户家,无开发者
系统测试
对整个产品系统进行测试。
****************************************************************************************************
测试方法
****************************************************************************************************
静态测试和动态测试:
前者不运行程序,仅通过分析或检查源程序的语法,结构,过程,接口等来检查程序的正确性;后者运行程序。
网上有个生动的例子:要检查二手车,踢一下轮胎,看看车漆,打开引擎盖检查属于静态测试;发动汽车,听听发动机声音,上路行驶属于动态测试。
黑盒测试:
看不到“盒子”里的结构,只关注输入和输出。
等价类划分:
了解这个测试方法,先了解一下什么是等价类,等价类就是一个集合里的东西,比如下图中,小红和小美就是小丽的等价类。
这样,就能理解什么叫等价类划分了,比如栗子中,假设我提前规定了ab必须是数字,那如果我选择了“2,3”“2,t”“a,t”三组数据用户测试,第1组为有效等价类,第2、3组为无效等价类。
边界值分析:
还拿栗子说事,如果我不仅规定了ab必须是数字,我还规定了ab比如在1-100之间取值,那我就需要选择这样的数据“1,100”“0,100”。
白盒测试
包括:逻辑覆盖、循环覆盖、基本路径测试。较简单,不赘述。
******************************************************************************************************
小结
******************************************************************************************************
软考覆盖的知识面很广,任意拿出一个类来就能深挖出好多,所以在软考复习中,缕清思路,着重理解基本概念是最重要的。