多测师-多培养一些优秀的测试工程师
网站地图 |   收藏本站   |   

17727591462

单元测试的边界测试

发布日期:2022-05-20 09:13:41 作者:多测师 浏览次数:

  边界测试是单元测试中最后的任务。软件常常在边界上出错,例如,在一个程序段中有一个n次循环,当到达第n次循环时就可能会出错;或者在一个有n个元素的数组中,第n个元素时是很容易出错的。因此,要特别注意数据流、控制流中刚好等于、大于或小于确定的比较值时出错的可能性。对这些地方要仔细地选择测试用例,认真加以测试。

  此外,如果对模块性能有要求的话,还要专门进行关键路径测试,以确定最坏情况下和平均意义下影响运行时间的因素。下面是边界测试的具体要检查的内容:

  ● 普通合法数据是否正确处理。

  ● 普通非法数据是否正确处理。

  ● 边界内最接近边界的(合法)数据是否正确处理。

  ● 边界外最接近边界的(非法)数据是否正确处理等。

  ● 在n次循环的第0次、第1次、第n次是否有错误。

单元测试的边界测试

  ● 运算或判断中取最大最小值时是否有错误;

  ● 数据流、控制流中刚好等于、大于、小于确定的比较值时是否出现错误。

  为了使单元测试能充分细致地展开,应在实施单元测试中遵守下述要求:

  1)语句覆盖达到100%。语句覆盖指被测单元中每条可执行语句都被测试用例所覆盖。语句覆盖是强度最低的覆盖要求,要考虑语句覆盖的意义,只要想象一下用一段从没执行过的程序控制庞大的飞行器升上天空,然后设法使它精确入轨,这种轻率简直就是荒唐。实际测试中,不一定能做到每条语句都执行到。第一,存在“死码”,即由于程序设计错误在任何情况下都不可能执行到的代码。第二,不是“死码”,但是由于要求的测试输入及条件非常难达到或单元测试的条件所限,使得代码没有得到运行。因此,在可执行语句未得到执行时,要深入程序作详细的分析。如果是属于以上两种情况,则可以认为完成了覆盖,但是对于后者,如果可能一定要尽量测试到,如果以上两者都不是,则是因为测试用例设计不充分,需要再设计测试用例。

  2)分支覆盖达到100%。分支覆盖指分支语句取真值和取假值各一次,分支语句是程序控制流的重要处理语句,在不同流向上测试可以验证这些控制流向的正确性。分支覆盖使这些分支产生的输出都得到验证,提高测试的充分性。

  3)覆盖错误处理路径。

  4)单元的软件特性覆盖。软件的特性包括功能、性能、属性、设计约束、状态数目、分支的行数等。

  5)对试用额定数据值、奇异数据值和边界值的计算进行检验,用假想的数据类型和数据值运行,测试排斥不规则输入的能力。

  单元测试通常是由编写程序的人自己完成的,但是项目负责人应当关心测试的结果。所有的测试用例和测试结果都是模块开发的重要资料,需妥善保存。

如需了解更多测试技术信息请关注:https://www.duoceshi.cn/jswz/深圳多测师软件与技术服务有限公司


查看更多 >>

推荐阅读