欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

单元测试 (VI) 单元测试 边界条件

最编程 2024-04-21 19:11:18
...

代码中的许多bug都出现在“边界条件”附件,也就是说,在那些条件下,代码的行为可能不同于平常的、每天都能运行到的程序路径。大多数时候代码会返回你所期望的值。

找边界条件是做单元测试最有价值的工作之一,因为bug一般就出现在边界上,需要被考虑的条件有:

1,完全伪造的或者不一致的输入数据,例如一个名为!!.@”的文件

2,格式错误的数据,例如一个邮件地址”wtli@gmail”

3,空值或者不完整的值,例如null(0,1,2,)

4,一些与意料中的合理值相去甚远的数值,例如800里开外一枪打爆鬼子的脑袋

5,传入数值与实际要求不符,例如给int型的list传入string型数据

6,数据的顺序与实际要求不符,例如要求是有序的list但传入了无序的数据

7,事情的执行顺序是错误的,例如在登录系统之前就打印了文件

8

一个帮助想到可能的边界条件的办法就是助记短语CORRECT

C onformance(一致性)—— 值是否和预期的一致

O rdering(顺序性)—— 值是否如预期那样,是有序或者无序的

R ange(区间性)—— 值是否位于合理的最大最小值之间

R eference(依赖性)—— 代码是否引用了不在代码本身控制范围内的外部资源

E xistence(存在性)—— 值是否存在(例如,是否是非空,非0,在一个集合中等等)

C ardinatity(基数性)—— 是否恰好有足够的值

T ime(相对或绝对的时间性)—— 所有事情的发生是否是有序的?是否在正确的时刻?是否恰好及时?