前言

对于单元测试,想必大家都已再熟悉不过了,同时单元测试的重要性也越发突出,在招聘中也特别强调单元测试,但是对于微软内置的单元测试还是太过于繁琐,于是都在寻找一种简洁并且更加轻量的测试工具。用的最多的莫过于Nuit和xUnit了,关于Nuit就不再介绍,请参考园友【田园里的蟋蟀】文章,由于早期的xNunit安装已经被弃用,所以需要注意,下面只是简单的说明其安装过程,特此记录,以备忘。

话题

首先新建一个带有单元测试的应用程序,在此之前得注意下:如果你之前安装了Visual Studio Runner VSIX扩展,你必须首先卸载它,因为最新版本已经通过NuGet程序包来下载,在工具->扩展和更新中卸载其扩展,然后告知你重启即可。可能你在运行测试时也会出现问题,可能是因为Runner缓存的缘故,此时你应该关闭VS,然后删除这个文件夹%TEMP%\VisualStudioTestExplorerExtensions。

接下来就是在单元测试中通过NuGet安装xUnit程序包了,输入xunit,接着如图所示安装Xunit.net

通过新建的测试会默认添加一个类,此类如下:

1
2
3
4
5
6
7
8
[TestClass]
public  class  UnitTest1
{
     [TestMethod]
     public  void  TestMethod1()
     {
     }
}

接下来我们需要用到我们安装的xUnit,首先添加引用XUnit,然后将类中的方法修改为Fact而无需对类进行特性识别并进行测试:

1
2
3
4
5
6
7
8
9
10
11
12
13
public  class  UnitTest1
{
     [Fact]
     public  void  TestMethod1()
     {
         Xunit.Assert.Equal(4, Add(2, 3));
     }
     int  Add( int  x,  int  y)
     {
         return  x + y;
     }
}

然后打开:测试->窗口->测试资源管理器,左侧会出现测试窗口,点击全部运行,结果如下:

如上述图所示,此时只会显示生成成功,并未出现我们想要的结果。

注意事项

其实此时的测试管理器根本就未运行单元测试,必须要借助xUnit中的运行环境利用测试管理器来运行VS中的测试,此时我们继续在单元测试中通过NuGet安装xunit.runner.visualstudio,然后重新生成下,你会发现出现如下的结果:

这就说明添加的程序包已经起做用了,接下来你只需点击全部运行或者把鼠标放在通过上,出现运行点击即可,结果如下:

根据方法Equal中的第一个参数你需要测试的数据和第二个参数你实际的数据来判断是否相等,很明显结果错误,我们将其修改为相等再试试,结果如下,通过:

如果你是在控制器程序中进行单元测试,添加xunit.runner.console即可。

总结

xUnit是Nuit的升级版本,并且xUnit在VS2015上以及其他比如Xamarin中也已经得到了具体实现,所以利用它来进行单元测试再好不过了,当然你也不用担心收费,因为它是开源的。

参考资料  

官方文档:Running xUnit.net tests in Visual Studio  

github:xunit-github


非常感谢您花时间读完这篇文章,如果您觉得此文不错,请点一下“推荐”按钮,您的“推荐”就是对我最大的鼓励以及不懈努力的肯定。本文版权归作者和博客园所有,来源网址:http://www.cnblogs.com/CreateMyself/欢迎各位转载,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利以及小小的鄙视。
不负我心,不负我生

xUnit安装及注意事项相关推荐

  1. 安川g7接线端子图_西门子SIWAREX称重模块安装接线注意事项!

    与称重变送器和称重仪表不同,SIWAREX系列称重模块可以直接接收称重传感器输出的mV信号,并与西门子控制系统(包括S7 200/300/1200/ET200M/ ET200S)无缝集成,具有扩展灵活 ...

  2. Windows下RabbitMQ安装及注意事项

    Windows下RabbitMQ安装及注意事项 简介 背景 1.      RabbitMQ是一个由erlang开发的AMQP(Advanved Message Queue)的开源实现. Rabbit ...

  3. NVIDIA Jetson AGX Xavier 安装 JetPack 注意事项

    NVIDIA Jetson AGX Xavier 安装 JetPack 注意事项 本文主要记录了我第一次接触Linux和为NVIDIA Jetson AGX Xavier安装JetPack时遇到的一些 ...

  4. 安装计算机主板时应注意的问题,电脑DIY:电脑主板的安装以及注意事项

    Hello,大家好,我是余生.如果今天带来的内容足够精彩,希望各位动手来给小编评论点赞喔!您的每一次评论点赞都会带来好运气喔! 电脑DIY:电脑主板的安装方法以及注意事项 在上期内容中讲述了CPU以及 ...

  5. Laragon的安装、注意事项

    Laragon的安装.注意事项 Laragon的安装 安装注意事项 在laragon上用composer安装laravel Laragon的安装 Laragon中文下载地址 http://www.la ...

  6. win10安装mosquitto注意事项

    win10安装mosquitto注意事项 相信大家在看到我这篇文章的时候很多人肯定查到了很多安装mosquitto的教程,其他的教程只要认真分析就能安装成功,我在这里只进行补充. 最重要的一定要写在前 ...

  7. Linux安装系统注意事项及系统初始化

      Linux安装系统注意事项 1.分区 学习用途: /boot:200M /swap :内存的1到2倍 /:根据需要分配大小,比如虚拟机下总空间是15G,那么可以分配8--10G跟/分区,如果是生产 ...

  8. Appium安装配置注意事项

    Appium安装配置注意事项 详细参见:https://blog.csdn.net/gchh_spring/article/details/112795268 1.安装JDK:安装的版本不要过高,1. ...

  9. 无线电中继台天线的安装及注意事项

    我们在做无线电信号覆盖过程中,必不可少的就是中继台天馈天线的安装,今天小编就和你讲讲无线电中继台天线的安装及注意事项: 天线支架安装 不同类型的天线,不同的安装环境对天线支架的设计要求不同,安装方法也 ...

最新文章

  1. python处理图片文件_python 学习(二)处理图片、TXT文档
  2. winpcapp配置c++网口通讯_MES、SCADA项目中的数据采集—基于C#与研华IO模块ModbusTCP通讯...
  3. python正则表达式模块
  4. 设置stm32系统各部分时钟
  5. VS2015编译TensorFlow C++程序完全攻略
  6. PIVOT 和 UNPIVOT 命令的SQL Server版本
  7. 第四届“强网杯”全国网络安全挑战赛_部分WP
  8. 图片合成gif_使用在线图片工具处理静态和动态图片的技巧
  9. sqlite3 编译问题
  10. 我的第一个SpringBoot项目
  11. HTML5 Video DOM 入门体验
  12. 海上瓶子下有东西吗_幼儿园小班健康教案《瓶子》含反思
  13. 性能测试:基础(2)
  14. 使用Oracle SQL Developer 编写运行 PL/SQL 块
  15. select支持手动输入
  16. drbd mysql mha_浅谈秒级故障切换!用MHA轻松实现MySQL高可用(三)
  17. java 网络编程 总结篇
  18. Linux安装winetim简单教程,[转载]wine安装最新版TIM
  19. oracle创建只读视图语句,使用语句创建视图(6)——设置视图约束(check option)...
  20. b85主板装服务器系统,[U盘装系统]技嘉B85主板U盘装系统图文教程

热门文章

  1. 网络数据泄露事件频发,个人隐私信息如何保护?
  2. 2.zookeeper客户端使用与集群特性
  3. Android之viewPager嵌套viewPager无法滑动子viewPager
  4. TemplateBinding和Binding的区别
  5. YOLO 超详细入门02 v2 (含代码及原文)
  6. mmdetection学习系列(1)——SSD网络
  7. 开源数据集网站推荐,持续更新!
  8. WPF框架剖析(从头开始自己写WPF框架)
  9. 计算机基础题word,计算机应用基础试题(带答案)Word版
  10. Win10家庭版 无法远程桌面连接的解决方案