代码静态分析工具c类:prefast ,c++ test,xtests

本文介绍了在项目初期如何利用代码静态分析工具提升代码规范性和安全性。对比了微软的Prefast、C++Test和开源的xTests。Prefast在VS2005 Team Suite中易于使用,侧重于初始化、空指针等错误检查。C++Test虽然自动化程度高,但资源消耗大,适用于简单的边界值和指针检查。xTests则以其灵活性和高度可配置性脱颖而出,但在VS.NET中的应用尚待研究。
摘要由CSDN通过智能技术生成
项目初始阶段,程序员写的代码刚刚进入单元测试,未算法调优,未集成测试。此阶段可以引用代码静态分析工具。

          由于目前的项目是非开源的c#项目,所以搜索了一些现有的比较主流的代码静态分析工具比拼一下。

           其中首当其冲的是prefast,这个是微软做的嵌入在测试套件中的工具,比较好用。在vs2005 Team Suite中,使用Prefast非常简单。修改你的工程属性,设置Enable Code Analysis For C/C++为Yes就可以,但是我尝试着找我们正在做的项目中,并未找到该配置项,后来多方查证,才知道,原来只有vs2005和08版本的team版中才有此配置项。
           其主要检查内容如下:初始化,空指针,内存泄漏,=与==的误用,安全问题,字符串错误,死循环等等等等,会将自动检查的错误在编辑器中显示成浅灰色。
           用其调优过的程序,其规范性与安全性提高很多,和c++ test相比,我所知有限,少了测试庄与边界值的检查与数据流的检查。
           那么说说c++test,有点类似于傻瓜照相机,属于白盒测试中的傻瓜工具,。
           C++Test速度慢,耗系统资源,测试执行效率低。

我觉得,如果你要马上看到测试结果,最好一个文件一个文件的测试,因为你还要仔细分析测试用例和测试结果。如果你想大规模的对很多文件进行单元测试,最好下班前做好准备,第二天早上来看结
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值