当前位置 博文首页 > LoulseLong的专栏:编写测试用例方法----等价类划分&边界值
一、等价类划分进本概念
????1、应用场合
????????????只要有数据输入的地方就可以使用,从无限多的数据中选取少数代表性的数据进行测试
?
????2、核心概念
????????????(1)有效等价类
????????????????????对程序规格有意义、合理的输入数据集合,程序接收到有效等价类数据,可以正确执行、计算。
????????????(2)无效等价类
????????????????????对程序规格无意义、不合理的输入数据集合,程序接收到无效等价类数据,应该给出错误提示,或者根本不让用户输入。
?
二、使用等价类划分编写测试用例
????首先:明确测试对象
????对于初学者,先一个控件一个控件去测,在测一个控件的时候,保证其他控件不要出错。
测试对象-----第一个数文本框
????1、根据需求,划分等价类
????????(1)有效等价类
????????????-99---99之前的整数
????????(2)无效等价类
????????????A.?非整数
????????????B.?<-99
????????????C.?>99
????2、细化等价类
????????(1)把第一步中不是特别细致的部分再详细划分
????????(2)有些情况不是根据显示需求,而是根据数据存储方式的理解
????说明:
????????????A.?数据在计算机中采用补码存储,而正数和负数的补码计算公式不同,所以需要把正数和负数单独测试
????????????----->把-99----99再划分为:
????????????????????????a)99----0
????????????????????????b)0----99
????????????B.?非整数可以再进行细化:小数、字母。符号、汉字
????????(3)建立等价列表(熟练后直接进行该步)
有效等价类 | |
编号 | 数据要求 |
1 | -99-0 整数 |
2 | 0-99整数 |
?
无效等价类 | |
编号 | 数据要求 |
1 | <-99 整数 |
2 | >99 整数 |
3 | 小数 |
4 | 字母 |
5 | 符号 |
6 | 汉字 |
7 ?为空
?
????????(4)编写用例
????????????从每个等价类中至少选取一个数据作为代表进行测试即可。
????????????穷举测试是不现实的,但不做穷举测试会存在风险。编写用例的方法,就是使用更合理的数据,在最少测试成本情况下,尽可能的降低风险。所以,如果时间允许,或者对某些数据有争议,可以把它就作为用例
?????????????按照同样的方法测试“第二个数”文本框(假设第一个数正确)。
?
补充:
????????1个字节byte=8位(bit)
????????1KB=1024bytes
????????1MB=1024KB
????????1GB=1024MB
????????1TB=1024GB
????????1PB=1024TB
????????1EB=1024PB
计算机当中整数是以补码表示的:
??正数的补码=原码
??负数的补码= (1)该数绝对值(2)二进制形式(3)按位取反(4)再加1
示例:-11的补码分四步
????(1)取-11的绝对值:11
????(2)11的二进制形式为:1011
????????????0000 0000 0000 0000 0000 0000 0000 1011
????(3)对上面取反
????????????1111 1111 1111 1111 1111 1111 1111 0100
?????(4)再加1
????????????1111 1111 1111 1111 1111 1111 1111 0101
?
边界值:
????一、应用场合
????????只要有数据输入的地方,有效无效数据的分界点,需要单独拿出来测试。
????????(1)有数据范围的
????如:-99-----99之前合法
????????(2)姓名:1-----20个字符
?
????????????边界值一般和等价类方法一起应用,找到有效无效数据的分界点(最大值和最小值)及其两边的点进行测试,形成一套完整的测试方案。
?
????二、如何使用
????把边界值的点(3个点)单独写用例。
?????????说明:边界值数据本质上可以归为有效和无效的范畴,但从测试技术来讲,需要单独拿出来测试。
?
用例的优化:
????1、对于不同控件的有效等价类及有效的边界值,可以尽可能在一条用例中进行测试----不同控件的有效等价类(及边界)可以组合。----减少测试用例的数量。
????2、在一条用例中,先一次只测试一个控件的无效等价类----无效等价类在开始的时候不能组合----避免“屏蔽”现象发生(前面控件的错误提示一出现,后面控件的错误提示就不出现了)。
????3、最后,可以再适当考虑无效等价类的组合----验证软件处理极端数据的能力。
?
?字符包含:字母、符号、汉字、0-9数字
等价类划分经验:
????1、有效等价类一般可以直接在需求中找到。
????2、无效等价类
????(1)必填项(不能为空)----为空
????(2)不能重复的----重复
????(3)数据有范围要求----超出范围 如:年龄18-60
????(4)有字符个数要求----超出范围 如:姓名:3-10个字符
????(5)填写项允许的格式、样式(整数、小数、字符)
????(6)针对于小数,小数点后位数要求
说明:
????每个控件的有效等价类和有效边界值的数量一般不会完全相等,会造成编写用例时数据的冗余(测过的数据再选一次或多次)。