常用测试用例设计方法-边界值
边界值测试用例设计
边界值理论
边界值分析方法的理论基础是假定大多数的错误是发生在各种输入条件的边界上,如果在边界附近的取值不会导致程序出错,那么其他取值导致程序出错的概率会很小
边界值有几个边界点定义:
(1)上点:边界上的点,如果该域的边界是封闭的,上点就在域范围内;如果域的边界是开放的,上点就在域范围外。比如:1<=x<=3,那么上点就是1和3;如果是1<x<3,那么上点还是1和3。
(2)离点:距离上点最近的一个点,如果域是封闭的,离点取域范围外,如果域是开放的,离点取域范围内。比如:1<=x<=3,那么离点就是0和4;如果是1<x<3,那么离点就是2。
(3)内点:顾名思义,就是范围内的点
边界值设计过程
边界值的测试用例设计过程相当简单,就是把边界的上点、离店、内点取出来作输入(输出)值即可
通过边界值发现过的BUG
简单举一个遇到过的例子,注册会员的顾客身份证必须(大于等于18岁,小于等于100岁),没有年龄输入框,通过输入身份证去判断年龄。
设计用例时取5个值(17、18、50、100、101)注意:这里输入的是身份证,准确的年龄计算应该要精准到日,即身份证的第13-14位
测试过程中由于开发按年分(身份证的第7-10位)去计算,并不精准,所以边界值出现了未满18岁和超过100岁客户注册成功的BUG。
个人心得
边界值很好找,开发也不至于那么粗心经常在开发的过程中打少一个符号,因此出现的BUG大多是需求文档上的边界要求,开发为了尽快的实现功能而粗心忽略了文档中的细致要求。还有一种BUG就是对需求边界定义理解不到位导致的,比如上述举例的BUG,开发的计算逻辑不够精准,类似的还有搜索时间段时(前端只能输入到日,但是传参必须精准到秒时也经常会出现BUG)