第2关:边界值法
任务描述
本关任务:编写代码,使用边界值法进行黑盒测试。
相关知识
为了完成本关任务,你需要掌握边界值法。
什么是边界值法
根据经验来说,软件中大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此,针对各种边界情况涉及的测试用例,可以查出更多的错误。
而使用边界值的分析方法涉及测试用例,首先应确定边界情况。通常输入和输出等价类的边界,应当选取正好等于、刚刚大于或者刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
由此可见,按照边界值法所设计的测试用例,主要用来测试程序在接收到边界值或者与边界值非常接近的输入时的表现与预期是否一致。
边界值的选择原则
-
如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围的边界的值作为测试输入数据。 例如:如果程序的规格说明中规定:“重量在
10
公斤至50
公斤范围内的邮件,其邮费计算公式为……”。作为测试用例,我们应取10
及50
,还应取10.01,49.99,9.99
及50.01
等; -
如果输入条件规定了值的个数,则用最大个数和最小个数,比最小个数小一,和比最大个数大一的数作为测试数据。例如,一个输入文件应包括
1~255
个记录,则测试用例可取1
和255
,还应取0
及256
等; -
分析规格说明,找出其他可能的边界条件。
编程要求
使用边界值法设计测试用例,并根据提示,在右侧编辑器补充代码,实现calcEdge
函数的黑盒测试。此次黑盒测试需要你设计4
组符合边界值选择原则的测试用例。
待测试函数calcEdge
的功能是计算一个直角三角形的斜边长,其中a
和b
分别表示直角三角形的两条直角边的长度。为了你专注于设计测试用例,edge
参数表示当输入a
,b
后你的预期输出。 注意:若a
或b
小于0
时,函数的计算结果为-1
。
测试说明
平台会对你编写的代码进行测试:
测试输入: 预期输出: 符合边界值选择原则的测试用例数量:4
开始你的任务吧,祝你成功!
代码如下
#include"func.h"
#include<stdio.h>
//计算直角三角形的斜边长度
float calcEdge(float a, float b, float area);
void BlackTest1()
{
/*请按要求设计测试用例,并调用calcEdge*/
/*********Begin********/
calcEdge(0, 0, 0);
calcEdge(0, 1, 1);
calcEdge(1, 0, 1);
calcEdge(-0.1,-0.1 ,-1);
/*********End*********/
}