现在项目组用testlink做测试用例的管理,单元测试框架的选择还没有定,比较倾向于C++测试框架CppUnit, CXXTest,以及C框架check项目主要采用c和c++开发,涉及PC端Windows和Linux平台,以及嵌入式Arm-Linux平台,Windows平台采用VC6开发,Arm-Linux用Eclipse和Vim不知道大家有没有什么好的建议,或者有过类似的项目经验,也可以对上面几个测试框架有什么心得,谢谢了

解决方案 »

  1.   

    CPPUnit需要RTTI,STL,或者异常机制的支持这个对Arm-Linux下面的测试,有点麻烦,而这个也是CXXTest的优势初衷是希望用一种测试框架,能够在arm和pc上测试,以及支持c和c++如果很难用一种搞定,也看不排除用几种测试框架的组合
      

  2.   

    cppunit有没有详细的使用分析?
      

  3.   

    关注一下,都是用的Unit系列~~
      

  4.   

    用Visual Unit 2吧。VC6代码就不用说了,ARM代码可以用VC6来编译测试代码进行测试(不需要修改产品代码,VU2具有屏蔽/转定义部分关键字等用于嵌入式项目的功能),Linux项目可以用GCC编译器来编译测试代码,所有这些,VU2都是直接支持的。
    尤其适合于项目大,质量要求高,时间紧,人员工资高(人工成本高)的项目。
    如果项目大,可测性通常差,要做单元测试的话,如果工具没有分割隔离代码的功能,要人工打桩分隔的话,除非有足够的人力,否则是很难做下去的。
    如果项目质量要求高,那么就要保证测试效果,一般包括三个方面:
    覆盖率:不但要统计出常规覆盖率(如语句覆盖、条件覆盖、分支覆盖、路径覆盖),更重要的是,如何找出遗漏用例提高覆盖率(人工做的话,因为最后的也是最难的,提高幅度很有限)?
    解决失真:打桩通常导致失真,如果工具没有底层模拟功能的话,失真一般是无法解决的。
    数据的分类集中:覆盖率仍然不能保证测试的完整性(覆盖率是基于代码的,对付不了部分代码未编写的错误,极端的情况是,函数一行都没写,那么所有覆盖率都是百分百),为了易于检查完整性,还要把数据分类集中,表格化是一种不错的方式,如果要更进一步,还要把每个数据集中。
    如果时间紧,人员工资高,就更要使用自动化的工具来减少时间和人员成本(这里说的自动化不是指那种号称由自动生成用例来测试的自动化,而是指可以把人的工作尽可能减少的自动化)。
      

  5.   


    Visual Unit 是不错的,可惜是商业化软件,另外对于嵌入式的模拟不一定好用,虽然可以对逻辑功能进行测试,可是无法编译成arm-linux版本,不能真实反应测试结果
      

  6.   

    关于嵌入式单元测试的问题,这段从论坛上拷来的话也许可以参考一下:嵌入式单元测试一直是单元测试的难点。一般有两种执行方式:一是在模拟器或目标机上执行,二是在PC上执行。前者环境真实,但效率低,且因嵌入式开发环境种类繁多,专门的测试工具市场窄价格高;后者效率高、工具适应性广价格适宜,但使用模拟环境,易产生测试效果是否有保障的疑惑。VU2使用第二种方式执行测试。由于VU2具有完善的底层模拟功能,可将子函数的输出视为内部输入,在用例中随意设置,真正实现了纯粹的单元测试,因此可以将被测单元与底层系统真正隔离且保证测试效果。具体来说,在底层代码的输出视为内部输入的前提下,代码单元在PC机上测试和在目标机上测试,其测试效果和测试结果是完全一致的(数据类型的长度差异等少量问题是容易解决的,不影响测试结果)。实际上,与底层系统隔离进行测试,也是单元测试的基本要旨,只不过在缺少完善的底层模拟功能时,无法做到既隔离又不失真。
      

  7.   

    测试用例还是应该写在文档里。因为单元测试代码也是代码,也需要维护,而代码维护的代价比文档大得多,所以并不是说单元测试越多越好。应该只在只需要的地方写单元测试。况且不是所有的地方都适合使用单元测试,比如多线程的用例场景,和GUI用例场景等。单元测试是用来帮助代码重构的一种回归测试手段而不是一种需求管理手段,应该在只在需要重构的地方添加单元测试手段(道理和使用断言有点类似)。
      

  8.   

    google test framework也可以,他和cppunit都是基于xunit的,支持c,c++。
      

  9.   

    oil painting
    oil painting
    oil painting
    oil painting
    oil painting
    oil-painting
    Oilpainting
    Oil paintings
    modern art 
    painting
    Oil paintings
    3d painting 
    art painting
    waterfall picture
    oil canvas art
    modern art 
    painting
    Oil paintings
    modern art 
    painting
    Oil paintings
    modern art 
    painting
    oil painting artist
    oil painting factory
    oil painting supplier
    handmade oil paintings
    Hand painted oil paintings
    wholesale oil paintings
    oil painting for sale
    oil painting history
     original oil paintings
    Drawing from nature
    custom oil painting
    Frame
    photo frame
    painting Frame
    Oil painting Frame
    Oil painting tracing
    Oil painting reproductions
    Famous painting
     Famous painting reproduction
    Portrait painting
    portrait oil paintings
    wholesale portrait oil paintings
    Pet portrait
    Pet portrait oil painting
    linen canvas
    Canvas painting
    Canvas oil painting
    Unframe painting
    acrylic painting
    knife painting
    oil painting technique
    Figure painting
    Figure oil painting
    Nude painting
    Nude oil painting
    Animal painting
    Animal oil painting
    Birds painting
    Birds oil painting
    Landscape painting
    Landscape oil painting
    Seascape painting
    Seascape oil painting
    Flower painting
    Flower oil painting
    Modern painting
    Modern oil painting
     group painting
    group oil painting
     group paintings
    group oil paintings
    Abstract painting
    Abstract oil painting
    Decoration painting
    Decoration oil painting
    Impression painting
    Impression oil painting
    classical painting 
    Classicalism painting
    Classical oil painting
    Reality painting
    Reality oil painting
    Still life painting
    Still life oil painting
    chinese oil painting
    china oil painting
    Xiamen oil painting
    Dali
    Monet 
    Van Gogh
    Klimt
    Picasso
    Thomas
    Canaletto
    Bouguereau
    Pino
    Renoir
    Miro
    Botero
    Lempica
    Ingres
    Leighton 
    Jack 
    Avian painting
    Avian oil painting
    Welcome warmly visit  http://www.art-ych.com/
      

  10.   

    我在项目中用过CPPUnit,还不错,简单易学,框架源代码很容易理解
    由于是开源项目且代码简单,可以按照自己的需求定制
      

  11.   

    我们用cppunit,感觉不错。如果就是比较简单的测试,自己写一个简单的测试框架也可以。
      

  12.   

    Cunit 加上 TureCourage 非常好用,也可以集成,减少UT测试的麻烦
      

  13.   

    各位有直接用visual studio自带的测试框架做C++项目测试的吗?
    现在做C++单元测试的工具比较多,有点
      

  14.   

    想知道CppUnit, C++Test,Visual Unit,Google Test具体区别在哪
      

  15.   

    正在纠结于使用何种测试框架,cppUnit对于较大型的测试好用吗,VU呢,这两个相比要怎么选择