易截截图软件、单文件、免安装、纯绿色、仅160KB

C/C++单元测理论精要(十一)

第4章 怎样才能保证测试效果?
4.1 衡量测试效果的基本指标:白盒覆盖
    衡量测试效果的基本指标是白盒覆盖率,即统计测试对代码逻辑单位的覆盖状况。代码的逻辑单位主要有:语句(块),条件、判定、分支、路径。常用的白盒覆盖有六种:语句覆盖、条件覆盖、分支覆盖、判定条件覆盖、修正判定条件覆盖、和路径覆盖。每种覆盖都有它的局限性,因此,实践中要多种覆盖组合应用。
    除MC/DC外,其他覆盖率的计算公式很简单:
    覆盖率 = 已覆盖逻辑单位数 / 全部逻辑单位数 * 100%,如:
    语句覆盖率 = 已覆盖语句块数 / 全部语句块数 * 100%;
    C/DC = (已覆盖判定数 + 已覆盖条件数)  /  (全部判定数 + 全部条件数) * 100%,这里的判定数和条件数是指条件和判定计算结果,即判定值和条件值。
    修正判定条件覆盖,即MC/DC是欧美航空标准。MC/DC主要用于检测判定内的条件之间的关系是否正确,对逻辑操作符&&和||是相当敏感的,但是并不检查从函数入口到出口的代码组合的覆盖,缺陷还是相当明显的。路径覆盖检查入口到出口的各种代码组合的覆盖,显然,MC/DC和路径覆盖的组合,才是最强的覆盖指标。
    统计覆盖率的一般方法是插装,即在被测代码中插入监视代码,监视执行状况。监视代码必须不影响被测代码本身的功能逻辑。
   
    工具可以将覆盖状况清晰标示出来,语句覆盖、条件覆盖、MC/DC覆盖可以在代码中标示,分支覆盖和路径覆盖可以在代码的逻辑结构图中标示。如上图,红色背景的是未覆盖的语句。条件前面的T,表示条件的真值未覆盖。条件前面的F,表示条件的假值未覆盖。条件前面的M,表示MC/DC未覆盖,也就是说,这个条件没有独立影响判定结果。红色背景的是未覆盖的分支。未覆盖的路径用红色画出。


相关文档:

C/C++中typedef的用法,告诉你不一样的typedef


<!--
/* Font Definitions */
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"\@宋体" ......

C++ 操作XML的完整例子——MSXML篇

写本文的目的是为了方便大家了解C++ MSXML操作方法。
当然,C++中对MSXML的调用有多种,本文采用的方法是完全参照MSXML SDK提供的文档进行操作。
如果有什么错误,欢迎指正。
代码框架是基于vs2008 MFC 对话框程序(UNICODE)。对话框程序需要读者自己创建。
#include <msxml6.h>
#include <comutil.h>
# ......

如何理解c和c++ 的复杂类型声明

曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明。
  我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C++声明的“右左法则”。 ......

c输入输出


格式输出:
printf(格式控制, 输出表列);
%d 十进制数  %md m为指定的宽度 若数据位数小于m,则左端补以空格;若大于m,则按实际位数输出
%ld 长整型数据  %mld 指定字段宽度
%o 八进制整数形式  %mo
%x 十六进制整数形式  %mx
%u unsigned型数据,它也可用%o或%x格式输出
%c 一个字符   ......

C/C++ 之旅

没想到 没想到 万万没想到
对C++八窍只通了7窍的我,竟然要开始搞c++了的说,真是好不刺激。
不敢相信,不敢相信。
类型是什么玩意?类怎么写?字符串怎么处理?怎么释放内存?
偶不知,不知,真的不知。。。。
哎       完都完了。
唉 不管怎么说都要去学的。。。一点辙都没有
#incl ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号