CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  软件工程/管理 >  质量管理与控制版

关于c++test的用法!高分相送,在线给分!

楼主hjt3328(绝望的生鱼片)2003-09-03 11:46:22 在 软件工程/管理 / 质量管理与控制版 提问

小弟第一次接触   c++test,还不懂用法,高人请指点一下!  
  1.static,dynamic,complete分别测试什么"?  
    如何   "自动测试代码构造(白盒测试)、测试代码的功能性(黑盒测试)和维护代   码的完整性(回归测试)。"???  
  2.动态解析和完全解析的输出为何出现以下内容:  
   
  Unable   to   parse   file:          
      C:\联通通信接口文档\TCPServer\Connect.cpp          
  Unable   to   parse   file:          
      C:\联通通信接口文档\TCPServer\Interface.cpp          
  Unable   to   parse   file:          
      C:\联通通信接口文档\TCPServer\Listen.cpp          
  Unable   to   parse   file:          
      C:\联通通信接口文档\TCPServer\StdAfx.cpp          
  Nothing   to   test   in:  
          C:\联通通信接口文档\TCPServer\Connect.cpp  
   
  Nothing   to   test   in:  
          C:\联通通信接口文档\TCPServer\Interface.cpp  
   
  Nothing   to   test   in:  
          C:\联通通信接口文档\TCPServer\Listen.cpp  
   
  Nothing   to   test   in:  
          C:\联通通信接口文档\TCPServer\StdAfx.cpp 问题点数:100、回复次数:7Top

1 楼zhuma(竹马)回复于 2003-09-03 12:04:02 得分 100

C++   Test是Parasoft公司出品的一个针对C/C++源代码进行自动化单元测试的工具。它可以对源代码进行三种测试:白盒测试、黑盒测试以及回归功测试。  
  白盒测试  
    C++   Test对C/C++源代码进行分析,针对所有的类的成员函数(包括:公共的、保护的以及私有类型的)进行测试。测试的方法是判断当输入一个非法的参数时,有关函数能否正确处理。(Record命令)在此状态下软件针对指定的文件、类或者是函数自动生成测试用例。  
  黑盒测试  
    不对源代码进行分析,并且只针对类的公共接口函数进行测试。(Play命令)  
  在此状态下软件不自动生成测试用例,而是直接运行在"测试用例编辑器"中当前已有的测试用例(手工添加的)。  
  回归功测试  
    在修改源代码后用原有的测试用例进行重新测试。(Play命令)  
    建议在实际使用中首先用Record命令执行一遍白盒测试,让软件根据函数自动生成相应的测试用例,然后再根据需要手工添加一些测试用例,最后再通过Play命令执行一遍黑盒测试。  
  示例一  
    假设我们要测试如下一个类的成员函数:int   mode2(int   nParam),则在进行白盒测试时软件会自动为我们生成如下6个测试用例:  
    nParam   =   1,   0,   -1,   2147483647,   -2147483647,   230  
    可以看出,软件测试用例的生成主要还是测试一些边界值,例如最大值、最小值、0等。  
  示例二  
    假设我们要测试如下一个类的成员函数:void   strcpy(char*   dest,   char   const   *   src),则软件会自动生成如下9个测试用例:  
    (1)   dest   =   NULL,   src   =   NULL  
    (2)   dest   =   "yPqKIJ!u_",   src   =   NULL  
    (3)   dest   =   "",   src   =   NULL  
    (4)   dest   =   NULL,   src   =   "h)zn9b"  
    (5)   dest   =   "BsmC,/i=zI6CT}pX",   src   =   "HcI{BeP(J"  
    (6)   dest   =   "",   src   =   "%   i?~TnON"  
    (7)   dest   =   NULL,   src   =   ""  
    (8)   dest   =   "($MN<n;^",   src   =   ""  
    (9)   dest   =   "",   src   =   ""  
    可见,如果我们的代码在实现时没有对各种可能情况(尤其是边界条件)进行特殊处理的话,则通过C++Test可以方便地发现这些潜在的问题。此外,对于一些特殊的测试情况,我们还可以手工创建测试用例。此外,采用C++   Test也可以帮助我们检查程序的编码情况,判断是否严格按编码规范进行开发。  
  使用  
    C++   Test的使用比较简单,即可以针对一个VC工程进行全面的测试,也可以一次只对一个C/C++源文件进行测试。  
  在试用中发现,如果项目比较大时,最好不要直接对一个工程进行自动测试,而应按文件一个一个地测试,否则可会会导致程序死掉。由于其是采用JAVA技术开发的,所以在使用时最好使用运算速度较快的机器。Top

2 楼hjt3328(绝望的生鱼片)回复于 2003-09-03 13:27:51 得分 0

楼上的老兄:  
    c++test没有"play"啊,仅仅有tests这项,且分为"static,dynamic,complete".  
  动态解析和完全解析的输出为何出现以下内容:  
   
  Command:   mtwrapper.exe   cl.exe   -GX   -D__MT_MFS__   -IH:\tools\c++test\C++TestProj\administrator\CurrProjData\TestUnit_5_0\Instr   -IH:\tools\c++test\C++TestProj\administrator\CurrProjData\TestUnit_5_0   -D__CPPTEST__   -Z7   -Od   -w   -c   "-FoH:\tools\c++test\C++TestProj\administrator\CurrProjData\TestUnit_5_0\ctbin\TestUnit_5_0\_mt_mfs_main.obj"   "-TpH:\tools\c++test\C++TestProj\administrator\CurrProjData\TestUnit_5_0\Instr\_mt_mfs_main.cpp"   -Yc    
   
   
  Process   exited   with   code   1  
  Error:   Compilation   of   H:\tools\c++test\C++TestProj\administrator\CurrProjData\TestUnit_5_0\Instr\_mt_mfs_main.cpp   failed.  
   
  The   following   problem(s)   occured   during   testing:  
   
  Unable   to   parse   file:          
      C:\联通通信接口文档\LongClient\LongClient.cpp          
  Error:   Compilation   of   H:\tools\c++test\C++TestProj\administrator\CurrProjData\TestUnit_5_0\Instr\_mt_mfs_main.cpp   failed.  
   
    很急的,请您回答啊Top

3 楼zhuma(竹马)回复于 2003-09-03 13:56:34 得分 0

不好意思  
  我是转贴的  
  让您失望了  
  抱歉Top

4 楼hjt3328(绝望的生鱼片)回复于 2003-09-03 14:08:10 得分 0

唉,没有关系了,看有没有高手帮我一下吧!  
  斑竹,你快来帮帮我啊Top

5 楼hjt3328(绝望的生鱼片)回复于 2003-09-04 09:02:24 得分 0

真的没有人回答了么,可以再加分的!!!!!!!!!!!!!!!111Top

6 楼mis98ZB(Effective Typer)回复于 2003-09-05 09:50:04 得分 0

C++TEST对双字节字符的支持极差!  
  无论是测试用例中的字符串还是存放文件的路径名。  
  还有就是在测试corba应用程序的时候,C++TEST生成的测试用stub总是有错误,导致编译不过。  
   
  ps:本人用的是C++TEST2.0,试用license过期了就再没有用过。不知道新的C++TEST2.1会不会好一些。Top

7 楼simman(mosen莫森)回复于 2003-09-09 20:40:50 得分 0

C++   TEST中,static代表对选中的代码进行静态代码检查分析,dynamic代表动态测试,它会自动建立桩,然后对每个单元进行测试,针对每个函数或方法的输入,它会自动地利用等价划分法和边界值法去设计用例(见楼上所说),根据每种数据类型的范围自动设计用例,缺点是定制用例(自己个人设计)的功能不太强,complete是两种都一起做。  
  一分钱一分货嘛!Top

相关问题

  • C++用法探讨。
  • C#中as的用法
  • dev c++的用法
  • C#接口用法
  • C#中with的用法?
  • 高分讨论C#中反射的用法。
  • 最简单的ViewState的用法(C#)马上结分
  • 高分求解c#中GET和SET的具体用法
  • c++里hashtable的用法
  • Borland C++ free command 的用法

关键词

  • c++
  • c/c++
  • 文档
  • 接口
  • 测试
  • 通信
  • 联通
  • 源代码
  • cpp
  • tcpserver

得分解答快速导航

  • 帖主:hjt3328
  • zhuma

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo