C++Test 使用

上一篇 / 下一篇  2008-05-15 23:30:23

51Testing软件测试网 H*j\;bi `S

一. 安装说明51Testing软件测试网M'x&of,F Q
第一步:
q[?,e2c5R-H0打开安装源程序,同普通的windows应用程序一样,选择安装路径,完成安装。51Testing软件测试网,C&?Qy8wC+L
第二步:
)t5OO6@8V$RR$Y0从桌面或者菜单打开C++Test,将弹出类似于下面的一个窗口:这里的machine ID就是C++Test和主机绑定的信息。这个machine ID需交给华唐公司,来申请license。而由于license的种类不同,可以分为local license(单机版)和net license(网络版)。51Testing软件测试网hnFIj s"t
第三步:
T%v0I)` O,rT8h.O0a0将相应的license和expire date粘贴到相应的位置,如果信息正确,系统将提示license ok。如果信息不正确,系统将提示wrong license。输入正确的license,打开C++Test,就可以进入C++Test的用户界面了。
~"p/`[Wfp0 51Testing软件测试网S5J O,pO;V Q
二. 界面说明
-}@}5r1}(K Z+k01. 源代码
,{0BK0x#IL[3K wKG0在源代码窗口可以看到我们所测试的代码,界面非常友好,当选择代码时,被选择的代码也会以蓝色块的形式出现。并且,当我们进行了静态分析和动态分析时,这里我们也可以非常直观的观测到静态分析和动态分析的结果。代码左侧的红色精灵帽表示静态分析时出现问题的所在,蓝色感叹号则表示动态分析时出现问题的所在。点击相应的地方,会出现对问题的一个简单描述。51Testing软件测试网Om d4AT3h

%^kvZV02. 静态分析
.Sh;ac F0在静态分析栏中的Results标签是对静态分析结果的一个罗列。每个红色精灵帽都代表一种违规行为,而它旁边的数字则代表测试代码中出现这种违规的次数。紧接着的字母表明违规行为的严重级别。再后面就是对这条规范的大致描述以及规则编号。51Testing软件测试网1V.O#R[.x$bIn;\
而标签Rules Manager则是对这些规则的管理,当用户需要使用某条规则的时候,只需要在相应规则左侧的方框内打上勾就表明选择了该条规则。而当用户不需要某条规则检查的时候,只需要去掉相应规则的勾就可以了。51Testing软件测试网E&mkG _Q ~c*D%[
    
j/q&c1TL(y2K03. 动态分析51Testing软件测试网 O0X q.L g
在动态测试中的Test Case/Results栏中,主要是对测试用例的一个总体管理。在这里,所有的测试用例的状态都一目了然,绿色表示成功,红色表示失败。用户可以自己添加或修改测试用例。51Testing软件测试网 a:V,vh$? fTeP0~
而Stub Tables栏则是对桩函数的管理,Suppressions则是对测试对象的一个管理。例如,上面的Data类有很多个成员函数,当用户并不想全部都测,而只是测其中的几个。这个时候就可以通过Suppressions进行选择。51Testing软件测试网]f_'[XM+l7_V^w/_
除此之外,上面的Tree filter还提供强大的滤波器功能,可以让用户更好的关注他们的焦点,例如只看最近一次测试的失败用例。51Testing软件测试网H-k}&r z(T
    51Testing软件测试网 OR%L!w4lR8X^ I2f
4. 过程进度
#M {)D-W-],Rn0这栏就是在测试进行中,C++Test告诉用户进度的一个对话框。所有的测试都分成静态动态两部分。红X表示此次测试不进行的部分,绿勾代表此次测试进行了的部分。后面的数字则是对测试用例的统计。例如(6/7)表示,总共有7个测试用例,其中6个已经进行了测试。51Testing软件测试网K7SD#W"z~!i

51Testing软件测试网(Yw#Y J*F+b

 三. 操作
_Pb9jj4L?\01. 建立测试环境51Testing软件测试网}9f"t&A(G8{k
(1) 打开C++Test,选择file/open file,选择C++Test安装目录下examples/cpptest_demo.cpp,这个cpp文件将出现在当前的project下。51Testing软件测试网j,}mRP|7YS

51Testing软件测试网i!j5m0q u FSi

(2) 在当前project下,右击cpptest_demo.cpp,选择read symbols(读入符号表),此时C++Test将parse(剖析)这个源程序,分析出此文件的文件结构。51Testing软件测试网Bu0?8NzoFA
 51Testing软件测试网'T'}2G|WX4|9W
(3) 右击cpptest_demo.cpp,选择build test,C++Test将自动的建立测试环境,包括测试驱动程序,桩模块。

z)bt}sn3N0

z HtcTK)o9h02. 静态测试
2n5L8Zn Lms0单击静态测试的按钮,C++Test将自动完成对源代码的静态测试,也就是我们所说的代码走查,走查所用到的规范可以在静态测试标签的rule manage下看到。
h5qXh u.[9T/^0下图,右侧就是静态测试(代码走查)的结果。每条违规信息包括对违规的描述,该错误共发生的次数以及相对应的具体位置。而下面的rule desription则是对这条规则的一个比较详细的描述。顶层的文件夹后面的“I=4 PV=1 V=33……”描述的是整个的对违规信息的统计。51Testing软件测试网mE%y0H o8u'K(P
I表示information,通知行为
+_ E:S_2Lo%Z D`)^y0PV表示possible violation,可能的违规行为
/o)hJ[y `1NL0V表示violation,违规行为51Testing软件测试网5Jn*sp s{
PSV表示possible servere violation,可能的严重违规行为
1A#HEI__0SV表示servere violation,严重违规行为。

d j*vk"s?-^,r L051Testing软件测试网 pW1_ {wc"Lp8I

3. 动态测试(Native)51Testing软件测试网*}h0Pp&B P/V7v
单击动态测试的按钮,C++Test将自动完成代码的动态测试。可以从各个层面上(单个测试用例,整个函数的测试用例,整个代码的测试用例)去看相对应代码的覆盖率。操作的时候,只需要右击相应的层次(例如一个测试用例),选择show coverage,就可以看到对应的覆盖率了。51Testing软件测试网.KM R Q!b fU6ld
下图,右侧就是对动态测试的一个整体描绘。列举了所有的测试用例,并且用颜色来区分成功和失败的测试用例,绿色代表成功通过了的测试用例,而红色代表没有通过也就是失败了的测试用例,对于每个错误的测试用例都有一个大致的描述。51Testing软件测试网r+K}6q6KX:R
每个测试用例或者各个节点上都做到了相应的覆盖率信息,包括了LC(语句覆盖),BBC(块覆盖),PC(路径覆盖),DC(决策覆盖),MCDC(多条件决策覆盖)以及CC(条件覆盖)。
WF\#lie7E0此外,上面的tree filter过滤器功能可以帮助用户迅速察看到自己关心的焦点或错误。

Q6Y4d5n}zmtDA051Testing软件测试网 mNl| PkA

4. 动态测试(Source)51Testing软件测试网z$v8E&P\,o.rQ
单击动态测试的按钮,
;ZAs^7rn o"qW%B!D0 C++Test将自动完成代码的动态测试(Source)。
JUB S5@)O4\0 
D g-L9TT"O05. 生成报表
}$I!YsHh0]i0选择file/generate report,根据对报表的需求,选择适当的报表内容种类(例如dynamic analysis1,coverage statistic1)。然后就会生成一个HTML格式的报表。
~ Hoetx0报表有多种类别和格式。 可以按照自己的需要来挑选
d3Y%s a9`2^0 51Testing软件测试网+PDS nU A

5S(f*U9\'@g0

TAG:

引用 删除 xiaoler   /   2010-08-05 13:10:00
建议看看C++test的专业博客,介绍很多C++test单元测试的知识:http://www.mytestlife.com/post/c++test.html
引用 删除 hukongli   /   2009-08-31 22:58:56
有c++test工具下载吗?高手给我一个
huior的测试烩 引用 删除 huior   /   2008-05-27 10:29:19
新版本v7.1的使用已经不是这样了,这是老版本的,呵呵
 

评分:0

我来说两句

日历

« 2024-04-22  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 8496
  • 日志数: 12
  • 建立时间: 2008-04-19
  • 更新时间: 2008-06-06

RSS订阅

Open Toolbar