测试用例
定义:
设计一个情况,软件程序在此情况下正常运行并且达到所设计的预期结果;若不能正常运行,且重复发生,则软件缺陷显示,测试人员标注且通知开发进行修复;新版本测试必须按照同一个用例测试,(回归测试)确保问题被修复。
内容:
测试用例包含:
1.标识符(用例编号)一般规则:TestCase_项目名称_模块名称_功能名称_0001
2.测试项:测试目的,必须确定。一般情况一句话表明测试模块、测试对象、方式、事件、目的(一个)。测试目的必须明确,不能一次多次检验多个点。无效等价类数据,只违反一个需求。eg:在QQ登录界面输入正确用户名密码可登录
3.依赖用例:一般功能流程上,下游用例依赖于上游的用例(已经存在的测试用例)用例依赖可以跨越模块。按照顺序执行时可以不用写依赖用例。eg:注册QQ号,登录测试;增加一个数据测试用例,将会被删除该数据的测试用例依赖。
4.测试步骤:最朴实语言写出来软件操作步骤,尽量详细。操作的对象和方式、数据(无数据:空,测试项中标注;空格测试:放在数据中间)。eg:用户名文本框输入:xxx;在省份下拉列表选择?,城市下拉列表选择?;
5.测试数据:单独整合,必须和测试步骤中的数据保持一致
6.预期结果:准确(对象、内容准确性)。原则上每一个操作,都要有一个结果。在重要步骤之后设定预期结果。eg:页面跳转到XXX;程序弹出对话框,提示用户名或密码错误。一般和测试目的密切相关。测试目的决定了测试步骤和预期结果。
7.测试结果:要求在测试执行完成后添加,没有执行保持为空;结果只有两个:通过(和预期结果一致)/失败(不一致)
8.测试执行人。可以和用例设计者相同或不同
9.备注。为测试用例正常做的特殊准备。eg:专门制造网络不畅,软件错误提示
作用:
有效性,测试过程中重要参考依据
可复用性,良好测试用例具有重复使用的功能,提高测试用例
易组织性,测试用例可能在数月甚至几年的测试过程中被创建和使用
可评估性,测试用例的通过率是检验代码质量的保证
可管理性,测试用例检验测试人员进度、工作量、跟踪测试人员工作效率标准。
测试用例编写注意事项
不设计“穷举测试用例”
详细测试用例与有效测试时间平衡。(时间不够情况下,尽可能多的测试,深度较浅)
“反向测试问题”;
测试用例库不断更新和维护。测试用例需要经常更新么(必须更新,尤其是发现过缺陷的测试用例。缺陷的“集群效应”、“杀虫剂效应”:一个发现过缺陷的测试用例,就相当于杀虫剂,必须使用“更强的杀虫剂”——新的测试用例(与之前的用例中数据类型保持一致)进行重新测试)
不同的需求类型和测试对象,灵活采用不同的测试用例设计方法
黑盒测试用例设计方法
测试数据选择:等价类划分法、边界值分析法
测试步骤设计:因果图法、判定表法、正交实验法、功能图法、场景法
测试数据选择
等价类划分法(有效\无效等价类)
原理:
输入域分成若干部分、从每个部分中选取少数代表性数据作为测试用例。某一类中的一个例子发现错误,这一等价类中的其他例子也能发现同样错误。若没有发现错误,则这一类中的其他例子也不会查出错误。不出现重复现象,有效和无效必须明确;也不要出现缺失输入部分。
确定等价类原则:
1)范围和个数确定,一个有效等价类和两个无效等价类
2)必须如何,一个有效等价类和一个无效等价类
3)条件是布尔量,确定一个有效等价类和一个无效等价类
4)一组值。n个有效等价类和一个无效等价类
5)一个有效等价类,n个无效等价类
6)一直划分等价类,进一步划分为更小的等价类
确定测试用例
1)规定唯一编号;
2)有效条件、有效数据、无效条件、无效数据;
问题
按照测试分类:功能(function)、界面(UI)、性能(Performance)、安全(Security)
边界值分析法
边界:有效和无效等价类划分线
范围:刚取到这个范围边界的值,以及刚刚超越这个范围边界的值,是特定的数据。次边界,边界附近的值,多1和少1,一个数据的差异。eg:6<=x<=18(取5,6*,7,17,18*,19);6<x<18(取6,7*,8,16,17*,18) ‘*’为边界;字符要求不大于150字:空 ,1,149,150,151
选择原理
有序集合,选取集合第一个元素和最后一个元素作为测试用例
内部数据结构,选择边界上的值作为测试用例