第一步 使用VS2012新建一个的控制台项目main,编辑main.cpp文件 ,代码如下

// main.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"int add(int a,int b)
{return a+b;
}int  minus(int a,int b)
{return a-b;
}class CMath
{
public:CMath();~CMath();int mul(int a,int b);
private:};CMath::CMath()
{
}CMath::~CMath()
{
}
int CMath::mul(int a,int b)
{return a*b;
}int _tmain(int argc, _TCHAR* argv[])
{return 0;
}

编译 运行正确。

第二步,在解决方案里面添加一个单元测试项目 名称为UnitTestMain,如下图

 

第三步 , 将main工程文件目录 添加到UnitTestMain工程中的包含目录,

解决方案资源管理器 右键单击UnitTestMain工程属性-》VC++目录-》包含目录更改。

第四步,编辑UnitTestMain工程的unittest1.cpp ,代码如下

#include "stdafx.h"
#include "CppUnitTest.h"#include "main.cpp"using namespace Microsoft::VisualStudio::CppUnitTestFramework;namespace UnitTestmain
{       TEST_CLASS(NoClass){public:TEST_METHOD(add_Test){// TODO: 在此输入测试代码Assert::AreEqual(10,add(5,5));Assert::AreEqual(1,add(-4,5));Assert::AreNotEqual(1,add(15,5));}TEST_METHOD(minus_Test){// TODO: 在此输入测试代码Assert::AreEqual(0,minus(5,5));Assert::AreEqual(-4,minus(1,5));            Assert::AreNotEqual(1,minus(5,5));}};TEST_CLASS(CMath_Test){private:CMath m_math;public:TEST_METHOD(mul_Test){// TODO: 在此输入测试代码Assert::AreEqual(10,m_math.mul(2,5));Assert::AreEqual(15,m_math.mul(3,5));           Assert::AreNotEqual(1,m_math.mul(15,5));}};
}

  代码说明

TEST_CLASS 宏用来填写你用 测试用例的类,名字可以随便写,但切忌不要和待测试代码的类名字相同,你也不想命名冲突吧。所以我一般取名 就是 待测类名_Test,非类函数直接NoClass。

  TEST_METHOD 宏用来定义被测试方法的函数,名字也可以随便写。  

  给出了 一般非类测试,和类单元测试的简单代码。当然类的成员变量也可以定义测试函数中。

 

第五步, 编译,生成,运行UnitTestMain工程。

   在解决方案资源管理器中 右键单击UnitTestMain-》生成

   菜单中 测试-》运行-》所有测试,

  菜单中 测试 -》 窗口-》 测试管理器 中查看测试结果,或者测试代码覆盖率

  

  另外在测试工程中的测试源文件中,在测试函数中可以鼠标右键-》运行测试  只测试某一个测试函数。

  最后附上测试结果图

转载于:https://www.cnblogs.com/wolfrickwang/p/3767306.html

使用VS2012 C++ 进行单元测试相关推荐

  1. 使用VS2012进行单元测试

    一.打开VS2012的创建单元测试功能 1.工具--自定义 2.选择 上下文菜单--编辑器上下文菜单|代码窗口 3.找到"创建单元测试"这个菜单了,将它移到运行测试菜单上面 4.关 ...

  2. C++单元测试学习总结9

    C++单元测试一:并非看上去那么简单--几个很实际的问题 理想与现实 为Java和C#做单元测试,基本上都有比较统一的工具.模式可用,IDE的支持也非常到位:可是到 了C++这里,一切就变的那样的&q ...

  3. 浅谈VS2012单元测试

    1.先建一个工程此工程带有待测试的方法 2.在解决方案中建立单元测试 3.在测试项目中添加测试项目的引用 4.写测试用例 namespace UnitTestProject1 {[TestClass] ...

  4. vs2012如何为进行单元测试

    vs2012如何为进行单元测试 单元测试属于白盒测试的一种,是对一个函数.或者一个模块,一个类来进行的测试.在vs2012中又很方便的工具可以进行测试.这里记录一下用其自带单元测试工具来进行测试的步骤 ...

  5. 使用VS2012内建的C++测试架构进行单元测试

    前言 在软件开发的过程中,单元测试(Unit testing)是一个重要的coding步骤,可以让你的程序代码质量大幅提升.协助你进行良好的程序架构设计,单元测试是针对程序单元(软件设计的最小单位)来 ...

  6. 新手学测试----Unit Test(单元测试)

    在程序员做项目的过程中,每当完成一个功能,首先自己需要对完成的功能进行测试,我现在正在做的项目用的工具是VS2012,那么接下来,就说一说在VS2012中是如何创建单元测试的. 如何创建单元测试? 在 ...

  7. 结对编程2——单元测试

    码市地址:https://git.coding.net/cjz113/jiedui2.git 结对成员:201421123111 201421123113 题目描述: 上一周大家为四则运算程序设计了2 ...

  8. .NET 项目中的单元测试

    .NET 项目中的单元测试 Intro "不会写单元测试的程序员不是合格的程序员,不写单元测试的程序员不是优秀的工程师." -- 一只想要成为一个优秀程序员的渣逼程序猿. 那么问题 ...

  9. 使用Visual Studio进行单元测试

    原文:使用Visual Studio进行单元测试 一.使用Visual Studio进行单元测试的几个建议 1.先写单元测试(依我愚见,应该是接口先行,如果有的话) -> 测试失败 -> ...

最新文章

  1. 【面试虐菜】—— JAVA面试题(3)
  2. UA MATH636 信息论5 信道编码定理的证明
  3. setings.py配置文件详解
  4. 一大批中文(BERT等)预训练模型等你认领!
  5. 中小企业SaaS型软件BI的发展前景
  6. 2018数学建模国赛总结(A题/编程选手视角)
  7. linux删除静态arp,Linux如何清理ARP缓存?
  8. render vue 添加类_详解vue 动态加载并注册组件且通过 render动态创建该组件
  9. IEBrowser IE升级工具 下载
  10. uni-app打开淘宝、京东,并跳转到对应的商品链接
  11. 短视频系统行业分析,短视频源码功能剖析
  12. Python 数据分析之 Numpy (三)
  13. 交换机(华为)双因素身份认证解决方案
  14. 连续系统与离散系统的时域分析
  15. AT89C51单片机流水灯c语言程序及详解(扫盲教程)
  16. 2016年2月西部数码.wang域名注册量及份额报告
  17. 图像处理之高斯金字塔
  18. 通过mac地址查询ip
  19. 探索脑机接口技术的潜在医学应用
  20. 商务礼仪——维护个人和企业形象

热门文章

  1. JavaScript学习(二十七)—解决IE以及IE8之前的浏览器下面的添加事件或者删除事件
  2. python每行输出5个数据_12个流行的Python数据可视化库总结
  3. C++模板中关键字typename与class的区别
  4. 预约挂号费用保险赔吗?
  5. python是编程语言吗
  6. 全面屏手机有什么缺点?
  7. 多肉建议多久浇一次水?
  8. 经营公司最核心的是经营员工的人生
  9. 今天有个销售员在问我:“自己每天都有在学习,但是为什么感觉没什么用,进步不大。”
  10. 创业者如何利用数字经济实现企业升级?