C++ Unit test 初体验
2017-03-12 10:49
253 查看
在软件开发的过程中,单元测试(Unittesting)是一个重要的coding步骤,可以让你的程序代码质量大幅提升、协助你进行良好的程序架构设计,单元测试是针对程序单元(软件设计的最小单位)来进行正确性检验的测试工作,在程序化编程中,一个单元就是单个程序、函式、过程等;对于对象导向编程,最小单元就是方法,包括基础类别(超类)、抽象类、或者衍生类别(子类别)中的方法。
想要在VC++项目中,进行单元测试的Framework有很多选择,例如: CPPUnit、GoogleGTest...等,自VisualStudio 2012开始,提供了内建的单元测试框架Microsoft.VisualStudio.TestTools.CppUnitTestFramework并且与VS高度整合。
以下为使用VS2013简历简单Unit test的步骤:
1. 建立Product 项目
建立一个基本的win32主控台应用程序项目。在这里命名为LearUniteTest,编写简单的代码,如建立一个Student类和年龄,年级函数。
2. 设定Product code配置类型,从.exe改为.lib(静态链接库)
3. 建立Unit Test项目, 在同一Solution解决方案中,新增测试项目,选择 测试->本机单元测试项目。
4. 设定测试项目配置:
请在Solution Manager中,对UnitTes项目按右键,在项目属性窗口中进行以下设定:
4.1. 在[VC++目录]->[Include目录]设定参考项目头文件所在的文件地址;
4.2. 在[VC++目录]->[库目录]中设定lib文件所在文件地址;
4.3 在[链接器]->[输入]设定连结项目输出的lib
5: 在Unittest.cpp中编写测试代码;
常用函数:Logger::WriteMessage()
Assert::AreNotEqual()
Assert::AreEqual()
想要在VC++项目中,进行单元测试的Framework有很多选择,例如: CPPUnit、GoogleGTest...等,自VisualStudio 2012开始,提供了内建的单元测试框架Microsoft.VisualStudio.TestTools.CppUnitTestFramework并且与VS高度整合。
以下为使用VS2013简历简单Unit test的步骤:
1. 建立Product 项目
建立一个基本的win32主控台应用程序项目。在这里命名为LearUniteTest,编写简单的代码,如建立一个Student类和年龄,年级函数。
2. 设定Product code配置类型,从.exe改为.lib(静态链接库)
3. 建立Unit Test项目, 在同一Solution解决方案中,新增测试项目,选择 测试->本机单元测试项目。
4. 设定测试项目配置:
请在Solution Manager中,对UnitTes项目按右键,在项目属性窗口中进行以下设定:
4.1. 在[VC++目录]->[Include目录]设定参考项目头文件所在的文件地址;
4.2. 在[VC++目录]->[库目录]中设定lib文件所在文件地址;
4.3 在[链接器]->[输入]设定连结项目输出的lib
5: 在Unittest.cpp中编写测试代码;
Student newStudent; newStudent.SetAge(10); newStudent.SetGrade(5); Logger::WriteMessage("StudengInfoTest begins./n"); Assert::AreNotEqual(newStudent.GetAge(), 0); Assert::AreNotEqual(newStudent.GetGrade(), 0); Logger::WriteMessage("StudentInfoTest end./n");
常用函数:Logger::WriteMessage()
Assert::AreNotEqual()
Assert::AreEqual()
相关文章推荐
- C++ 单元测试工具 CppUnitTest
- C++ Unit Testing Framework: A Boost Test Tutorial——part2:Using Boost Test
- 学习笔记-遗留代码的c++ unit test - 1和2
- C++单元测试(Unit Test)中Catch和Gmock的结合使用
- C++ UnitTest编写
- 介绍一个轻量级的C++ Unit test 框架: TUT
- c++调试UnitTest(问题代码在so库里)的方法
- c++单元测试工具unittest++使用小结
- C++ Unit Testing Framework: A Boost Test Tutorial——part1:Boost Test crash-course
- C++ UnitTest: gtest-1.3.0 + VS2008
- testngpp - next generation unit test framework for c/c++
- 【Chromium】谷歌C++ unit test框架 -- gtest
- C++ Unit Test Framework(单元测试框架)
- C++ 单元测试工具 CppUnitTest
- c++ unit test
- Google C++ unit test 在ARM Android 2.3 上的编译与使用
- C++单元测试工具unittest++使用小结
- 使用Google Unit Test 测试你的C++代码
- Python 的unittest 初体验
- Use python for C++ unit/function test