1.安装测试插件

2.新建测试用例

这里就用课堂练习找水王  作例子

写一个类waterKing.h和waterKing.cpp

1 //idList.h

2 #pragma once

3 #include

4 using namespace std;

5 class idList

6 {

7 private:

8 int id[1000]; //发帖ID

9 int waterKing; //当前水王

10 int value = 0; //当前水王水的可能性

11 int num; //帖子数

12 public:

13 idList(int num,int id[]);

14 ~idList();

15 int searchwaterKing();

16 };

1 //idList.cpp

2 #include "idList.h"

3

4 idList::idList(int num, int id[])

5 {

6 if (num <= 0)

7 {

8 cout << "非法的输入";

9 exit(1);

10 }

11 this->num = num;

12 for (int i = 0; i < num; i++) {

13 this->id[i] = id[i];

14 }

15 }

16

17

18 idList::~idList()

19 {

20 }

21

22 int idList::searchwaterKing() //返回-1代表没有水王,否则返回水王的ID

23 {

24 if (num % 2) //奇数

25 {

26 for (int i = 1; i < num; i += 2)

27 {

28 if (value > 0) //当前水王存在

29 {

30 if (id[i] == id[i + 1])

31 {

32 if (id[i] == waterKing)

33 {

34 value += 2;

35 }

36 else

37 {

38 value -= 2;

39 }

40 }

41 }

42 else //当前水王不存在

43 {

44 if (id[i] == id[i + 1])

45 {

46 waterKing = id[i];

47 value += 2;

48 }

49 }

50 }

51

52 if (value > 0)

53 {

54 if (id[0] == waterKing)

55 {

56 value++;

57 }

58 else

59 {

60 value--;

61 }

62 }

63 else

64 {

65 waterKing = id[0];

66 value = 1;

67 }

68

69 }

70 else //偶数

71 {

72 for (int i = 0; i < num; i += 2)

73 {

74 if (value > 0) //水王存在

75 {

76 if (id[i] == id[i + 1])

77 {

78 if (id[i] == waterKing)

79 {

80 value += 2;

81 }

82 else

83 {

84 value -= 2;

85 }

86 }

87 }

88 else //水王不存在

89 {

90 if (id[i] == id[i + 1])

91 {

92 waterKing = id[i];

93 value += 2;

94 }

95 }

96 }

97 }

98 if (value > 0)

99 {

100 return waterKing;

101 }

102 else

103 {

104 return -1;

105 }

106 }

写完代码之后记得编译一下,会在项目DEBUG目录下生成OBJ文件

3. 右击解决方案->"添加"->"新建项目"->"测试"->"托管测试项目"

新建之后再解决方案下就会出现一个刚刚新建的测试项目

在UnitTest.cpp下添上引用

在下面的[TestMethod]里编写自己的测试代码

1      [TestMethod]

2 void TestMethod1()

3 {

4 int list[] = {1};

5 idList test1(sizeof(list)/sizeof(int), list);

6 int result = test1.searchwaterKing();

7 Assert::AreEqual(result, 1);

8 };

9

10 [TestMethod]

11 void TestMethod2()

12 {

13 int list[] = { 1,2,1 };

14 idList test1(sizeof(list) / sizeof(int), list);

15 int result = test1.searchwaterKing();

16 Assert::AreEqual(result, 1);

17 };

18

19 [TestMethod]

20 void TestMethod3()

21 {

22 int list[] = { 1,1,1,2,3 };

23 idList test1(sizeof(list) / sizeof(int), list);

24 int result = test1.searchwaterKing();

25 Assert::AreEqual(result, 1);

26 };

27

28 [TestMethod]

29 void TestMethod4() //该测试应该是不相等的

30 {

31 int list[] = { 1,1,2,3 };

32 idList test1(sizeof(list) / sizeof(int), list);

33 int result = test1.searchwaterKing();

34 Assert::AreNotEqual(result, -1);

35 };

36

37 [TestMethod]

38 void TestMethod5() //该测试应该是不相等的

39 {

40 int list[] = { 1,2,3,4,5 };

41 idList test1(sizeof(list) / sizeof(int), list);

42 int result = test1.searchwaterKing();

43 Assert::AreNotEqual(result, -1);

44 };

右击测试项目->属性->链接器->输入->附加依赖项->编辑

添加自己刚刚编译生成的OBJ

然后就可以点击菜单栏的测试菜单,进行相关测试了

Assert::XXX的用法不是很了解,网上一些.NET的测试教程很多,

来源:https://www.cnblogs.com/xiaoxt/p/5511005.html

vs2015 单元测试 linux,VS2015做单元测试相关推荐

  1. 持续集成之单元测试篇——WWH(讲讲我们做单元测试的故事)

    持续集成之单元测试篇--WWH(讲讲我们做单元测试的故事) 前言 临近上线的几天内非重大bug不敢进行发版修复,担心引起其它问题(摁下葫芦浮起瓢) 尽管我们如此小心,仍不能避免修改一些bug而引起更多 ...

  2. 不做单元测试的6大借口

    看到了一篇不错的关于单元测试的文章,于是就机翻加改写了一下.作者的观点是适当的,不过稍微欠缺了些数据. 我开始打算写一篇关于单元测试及其背后的哲学和过程的文章.我想谈谈完成对项目的一组更改并能够部署它 ...

  3. 单元测试是什么?为什么要做单元测试?

    背锅侠 一个有个性的订阅号 1.单元测试是什么 单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的.很明确的功能是否正确,通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定 ...

  4. html如何与py_Web项目如何做单元测试?

    你可能会用单元测试框架,python的unittest.pytest,Java的Junit.testNG等. 那么你会做单元测试么!当然了,这有什么难的? test_demo.py def inc(x ...

  5. xcode 5 使用 XCTest 做单元测试

    xcode 5 使用 XCTest 做单元测试 什么是单元测试,请看 百度百科 单元测试 一:在xcode5 之前,我们新建项目时,可以选择是否集成单元测试:如今在xcode5,我们新建立的项目默认就 ...

  6. 前端抢饭碗系列之Vue项目如何做单元测试

    大家好,我是若川.今天分享一篇vue项目如何做单元测试的好文,文章比较长,建议先收藏,需要时用电脑看. 点击下方卡片关注我.加个星标 学习源码系列.年度总结.JS基础系列 关于单元测试,最常见的问题应 ...

  7. 为什么我们要做单元测试?(二)

    引子 当我第一篇博客发布,并被张善友老师的公众号转载之后,在公众号文章和博客园的留言中,许多开发者纷纷表示,单元测试作为企业行为,与实施的技术栈不同,不是开发者个人行为,实施单元测试花费的时间精力过于 ...

  8. 使用MS Test做单元测试

    声明:本篇博客翻译自:http://www.c-sharpcorner.com/article/unit-testing-with-ms-tests-in-c-sharp/ 写在翻译之前: 依然清晰的 ...

  9. python可以测试java的代码吗_使用python做你自己的自动化测试--对Java代码做单元测试 (2)-导入第三方jar包裹...

    使用Jython对Java做单元测试,当然,为了测试开发java代码.这涉及到引入第三包的问题,如何导入第三方的包? 您可以使用http://blog.csdn.net/powerccna/artic ...

最新文章

  1. 判断一个字符串中出现次数最多的字符
  2. insert时调用本身字段_「技术篇」ETL工具Kettle数据对比同步以及Java程序中调用
  3. MySQL搭建主从复制架构实战
  4. EA和Take-Two游戏业巨头纷纷陷入困境
  5. java控制图片移动_多线程控制图片移动
  6. (转载)20分钟读懂程序集
  7. Express + Node 爬取网站数据
  8. 人工智能的Hello World!
  9. 一句话菜刀 php eval,如何基于菜刀PHP一句话实现单个文件批量上传?
  10. ICEM划分网格实例——六角形螺栓
  11. mysql-front服务器_mysql-front远程连接自己linux服务器上的mysql服务器
  12. js对加法计算、减法计算、乘法计算、除法计算的精度处理
  13. Android蓝牙源码分析——BTA层消息分发
  14. 计算机无法完成评估,Windows Vista下系统评分无法完成的问题
  15. 通过新浪天气api查询天气
  16. 在金山云上,“雷布斯”有这些野心
  17. linux c编译安装,uClinux设置(安装,编译)
  18. [jzoj4210] 【五校联考1day1】我才不是萝莉控呢 {哈夫曼树}
  19. 用python对文件内容差异对比
  20. 《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一3.2 计算机系统...

热门文章

  1. 【MyBatis】MyBatis对Log4J的支持、MyBatis实现新增、删除、修改、查询
  2. Libra教程之:执行Transactions
  3. 操作系统 先来先服务算法(FCFS)、最短寻到时间优先算法(SSTF)、扫描算法(电梯算法,SCAN)、循环扫描算法(CSCAN)
  4. 算法竞赛入门经典(第二版) | 例题4-4 信息解码 (紫皮书牛啤!)(UVa213,Message Decoding)
  5. [leetcode] 198.打家劫舍
  6. [Leetcode总结] 101.对称二叉树
  7. 单片机原理及其应用——单片机外部中断实验(八段数码管通过按键依次显示0~9数字)
  8. java继承circle类_java的继承
  9. ERROR: No query specified
  10. 进入工程制图闪退_工程整体一