项目初始阶段,程序员写的代码刚刚进入单元测试,未算法调优,未集成测试。此阶段可以引用代码静态分析工具。
由于目前的项目是非开源的c#项目,所以搜索了一些现有的比较主流的代码静态分析工具比拼一下。
其中首当其冲的是prefast,这个是微软做的嵌入在测试套件中的工具,比较好用。在vs2005 Team Suite中,使用Prefast非常简单。修改你的工程属性,设置Enable Code Analysis For C/C++为Yes就可以,但是我尝试着找我们正在做的项目中,并未找到该配置项,后来多方查证,才知道,原来只有vs2005和08版本的team版中才有此配置项。
其主要检查内容如下:初始化,空指针,内存泄漏,=与==的误用,安全问题,字符串错误,死循环等等等等,会将自动检查的错误在编辑器中显示成浅灰色。
用其调优过的程序,其规范性与安全性提高很多,和c++ test相比,我所知有限,少了测试庄与边界值的检查与数据流的检查。
那么说说c++test,有点类似于傻瓜照相机,属于白盒测试中的傻瓜工具,。
C++Test速度慢,耗系统资源,测试执行效率低。
我觉得,如果你要马上看到测试结果,最好一个文件一个文件的测试,因为你还要仔细分析测试用例和测试结果。如果你想大规模的对很多文件进行单元测试,最好下班前做好准备,第二天早上来看结
由于目前的项目是非开源的c#项目,所以搜索了一些现有的比较主流的代码静态分析工具比拼一下。
其中首当其冲的是prefast,这个是微软做的嵌入在测试套件中的工具,比较好用。在vs2005 Team Suite中,使用Prefast非常简单。修改你的工程属性,设置Enable Code Analysis For C/C++为Yes就可以,但是我尝试着找我们正在做的项目中,并未找到该配置项,后来多方查证,才知道,原来只有vs2005和08版本的team版中才有此配置项。
其主要检查内容如下:初始化,空指针,内存泄漏,=与==的误用,安全问题,字符串错误,死循环等等等等,会将自动检查的错误在编辑器中显示成浅灰色。
用其调优过的程序,其规范性与安全性提高很多,和c++ test相比,我所知有限,少了测试庄与边界值的检查与数据流的检查。
那么说说c++test,有点类似于傻瓜照相机,属于白盒测试中的傻瓜工具,。
C++Test速度慢,耗系统资源,测试执行效率低。
我觉得,如果你要马上看到测试结果,最好一个文件一个文件的测试,因为你还要仔细分析测试用例和测试结果。如果你想大规模的对很多文件进行单元测试,最好下班前做好准备,第二天早上来看结