等价类边界值
第四讲 测试用例
--等价类划分+边界值
一、测试用例/案例(test case/test instance)
1、什么是测试用例
在测试执行之前,由测试人员编写的,用来指导测试过程的重要文档。主要由:用例编号、测试目的、测试步骤(用例描述)、预期结果(期待结果)等组成
说明:不同公司使用的测试管理工具不同,所以用例的模板也有可能不同,但是核心的部分是大同小异的。
2、功能(黑盒)测试的主要方法有哪些(测试方法)?
等价类划分法
边界值法
因果图法
判定表法
正交排列法
测试大纲法
场景法
要求:每种方法都必须要掌握1)应用场合2)使用步骤
3、编写测试用例可以参考的资源有哪些?(实际工作中这些参考资源有可能不全)
1)用户的需求(文档)
2)核心的技术类文档(该文档不一定能获得,例如:开发与测试不是同一家公司)
3)已开发出来的程序(被测系统)
在实际应用中,被测系统是重要的参考资源,需求大概只可以完成30-40%左右的测试工作。
4)与开发人员、产品经理、客户等进行沟通讨论。
二、等价类划分法
1、应用场合
在程序中,有数据输入的时候可以使用等价类划分法。在大量数据中挑选少量代表数据进行测试。(抽样测试)
2、测试思想
1)“穷举测试”思想:将所有可能的数据都测试1遍,是一种测试最全面的思想。但是在实际应用中,测试效率极低,所以不能采用。
2)理想的测试思想:
使用最少的测试数据(花费时间少),达到的最好的测试效果。
但是:没有测试所有数据,有可能有遗漏bug的风险。所以在测试时间允许的前提下,可以适当进行补充测试。(纠结的,不放心的,甚至随机挑选的数据都可补充测试)这样可以降低遗漏bug的风险。
3、等价类划分法的测试思想
将大量数据划分成若干范围,再从每个范围中挑选少量代表数据进行测试。
特点:理论上,每个等价类范围中挑选的代表数据,是可以代表所在等价类的测试结果的。
4、两个概念
有效等价类:对程序来说,正确的、合理的输入数据集合。
无效等价类:对程序来说,错误的、不合理的输入数据集合。
5、测试步骤(如何测?)
被测系统:两位数加法器
需求:两个数都要求输入-99--99之间的整数,不能为空。
步骤1:分析需求,初步划分等价类。(依据:需求)
思路:初学者适合使用单一测试的方法,就是每一个文本框要单独测试。
首先:测试“第一个数”(第二个数要填正确数据配合)
接下来:测试“第二个数”(第一个数填正确数据配合)
有效等价类:
-99--99之间的整数
无效等价类:
为空(不填)
非整数
>99的整数
<-99的整数
步骤2:细化等价类。(熟练后步骤1,2可以合并)
说明:细化时不再依据需求,而是以数据存储的类型和格式为主要依据。
1)细化1:
有效等价类:-99--99之间的整数
说明:整数类型在存储时应用补码方法,正整数和负整数的补码算法不同。所以:正整数和负整数应该分别测试。
最终细化结果:
-99--(-1)的整数
0--99之间的整数
说明:有效数据测试有必要正、负数分别测试,而无效数据通常不涉及存储,可以不分正、负分别测,但是如果不放心,在时间允许的前提下,可以分别测。
2)细化2:非整数
非整数(不是整数):
小数
字符(字母字符、特殊字符、中文字符)
字符-- 字母字符
数字字符0-9
特殊字符
中文字符
说明:字符是否需要细分,不是固定的,要根据实际情况,如果需求要求细分,那就细分测试,如果需求没有要求细分,看时间是否充分。
步骤3:填写<等价类表>
将步骤1,2的分析结果填入<等价类表>
步骤4:编写测试用例
说明:每个范围要保证至少挑选1个代表数据进行测试
注意:测试用例需要评审
互审、小组评审会、甲方参加的评审会
总结:案例1思路发现的问题
1、两个数都为无效的情况或者1个数多种无效数据组合的情况-- 没有测。
----最后强化测试来解决(适当进行强化)
2、测试有效数据时,发现测试用例存在冗余(重复)--优化测试
作业:即时贴程序的设置标题功能,需求:1-40个字符,不能包含/*?:,不能为空。
填<等价类表>。