语句覆盖测试用例 语句覆盖
语句覆盖(StatementCoverage)又称行覆盖(LineCoverage),段覆盖(SegmentCoverage),基本块覆盖(BasicBlockCoverage),这是最常用也是最常见的一种覆盖方式,就是度量被测代码中每个可执行语句是否被执行到了。这里说的是“可执行语句”,因此就不会包括像C++的头文件声明,代码注释,空行,等等。非常好理解,只统计能够执行的代码被执行了多少行。需要注意的是,单独一行的花括号{} 也常常被统计进去。语句覆盖常常被人指责为“最弱的覆盖”,它只管覆盖代码中的执行语句,却不考虑各种分支的组合等等。假如只要求达到语句覆盖,那么换来的确实测试效果不明显,很难更多地发现代码中的问题。
这里举一个不能再简单的例子,我们看下面的被测试代码:
int foo(int a, int b)
{
return a / b;
}假如我们的测试人员编写如下测试案例:
TeseCase: a = 10, b = 5测试人员的测试结果会告诉你,他的代码覆盖率达到了100%,并且所有测试案例都通过了。然而遗憾的是,我们的语句覆盖率达到了所谓的100%,但是却没有发现最简单的Bug,比如,当我让b=0时,会抛出一个除零异常。
简言之,语句覆盖,就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。这里的“若干个”,意味着使用测试用例越少越好。语句覆盖率的公式可以表示如下:
语句覆盖率=被评价到的语句数量/可执行的语句总数 x 100%
更多阅读
边界值分析法_测试用例编写练习题2第零次更新:2012年07月26日
感谢网友“简单实现”对本文的校对。--------------------------------------------------------------------------------------------------(2) 输入三个不超过200的整
部分白盒测试工具介绍 安卓白盒测试工具
一、JTEST1、简介:jtest是parasoft公司推出的一款针对java语言的自动化白盒测试工具,它通过自动实现java的单元测试和代码标准校验,来提高代码的可靠性。Jtest先分析每个java类,然后自动生成junit测试用例并执行用例,从而实现代码的最
软件测试培训教程:测试用例那点儿事儿
好的测试用例的设计相当了软件开发中的详细概要设计,要写出好的测试用例首先要对所测试的软件很熟悉,熟悉软件的每个功能点和系统的整个业务流程。其次,对整个测试用例有个好的规划,理清主线,功能点的在哪个地方被覆盖都是需要考虑的。最
统一建模语言UML基础专题之UML简介及用例图 统一建模语言uml
统一建模语言UML基础专题之UML简介及用例图为什么要学习统一建模语言UML?面向对象编程方法学是面向对象编程的指导思想。进行面向对象编程编程的第一步是利用对象建模技术(Object Modeling Technique,OMT)来分析目标问题,抽象出相关对
软件测试用例模板 功能测试用例模板
测试用例ID测试用例的ID(由案例管理系统自动生成,方便跟踪管理)测试用例名称产品名称产品版本功能模块名测试平台用例入库者用例更新者用例入库时间用例更新时间测试功能点测试的功能检查点测试目的