前言

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

话题

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

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

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

    [TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
}
}

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

    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

xUnit安装及注意事项的更多相关文章

  1. DUBBO安装配置注意事项

    DUBBO安装配置注意事项 参考URL:http://blog.csdn.net/lichunan/article/details/40349645 ====== 管理端: 记得更改TOMCAT的端口 ...

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

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

  3. Adobe Photoshop CC 2018 v19.0 简体中文正式版下载安装破解(附注册机+破解教程) 32/64位(安装破解注意事项是什么)

    Adobe Photoshop CC 2018 v19.0 简体中文正式版下载安装破解(附注册机+破解教程) 32/64位(安装破解注意事项是什么) 一.总结 一句话总结:下载安装破解教程文中都有,需 ...

  4. redis安装及注意事项

    在linux中使用wget时,若报-bash: wget: command not found,则表明没有安装wget,需要安装,安装命令如下: yum -y install wget 安装完成即可以 ...

  5. hadoop安装及注意事项

    一.hadoop安装及注意事项1.安装hadoop的环境,必须在你的系统中有java的环境.2.必须安装ssh,有的系统默认就安装,如果没有安装需要手动安装.    可以用yum install -y ...

  6. Ubuntu安装teamviewer注意事项。

    Ubuntu安装teamviewer注意事项. 首先通过浏览器到官方下载ubuntu对应teamviewer的安装包 但是通过dpkg –i安装之后发现安装过程出问题,安装好的包打开之后也闪退. 这个 ...

  7. VmWare安装Centos8注意事项

    VmWare安装Centos8注意事项 1.需选择稍后安装操作系统 2.选择操作系统版本 3.修改虚拟机配置 4.配置完成点击开启虚拟机(注意要将鼠标放在屏幕中央,点击一下后才能使用上下键进行选择) ...

  8. subverison的安装与注意事项

    1.安装 :官网下载 http://blog.csdn.net/sinboy/article/details/4000524 http://sourceforge.net/projects/win32 ...

  9. TiDB数据库集群安装以及注意事项

    今天尝试安装tidb集群.详细的安装步骤我们参考:https://pingcap.com/docs-cn/op-guide/ansible-deployment/ . 不过安装之前需要一些注意事项. ...

随机推荐

  1. 出现了内部错误-网站中X509Certificate2加载证书时出错

    今天给网站配置了加密证书文件,用类X509Certificate2加载证书文件时,一直报出现了内部错误,但是Demo中用控制台程序加载证书没任何问题 读取证书文件的语句: X509Certificat ...

  2. sequelize常见操作使用方法

    关于sequelize的准备工作这里不再赘述. 一.引入sequelize模块 var Sequelize = require('sequelize'); 二.连接数据库 var sequelize  ...

  3. script async 和script defer的区别

    浏览器对js文件的操作主要有两部分:下载和执行: js文件下载在有些浏览器中是并行的,在有些浏览器中是串行的,如:IE8.firefox3.chrome2都是串行下载的: 执行在所有浏览器中默认是阻塞 ...

  4. 如何通过倾斜摄影数据手动配置s3c索引文件?

    如何通过倾斜摄影数据手动配置s3c索引文件? 大家知道,倾斜摄影数据最常见的是OSGB格式,并且是由一个一个的Tile分级文件夹构成的Data文件夹.结构一般如下图所示: 那么,如何才能把模型的各个瓦 ...

  5. >hibernate.cfg.xml的一些常用配置

    1.数据库的基本配置信息 hibernate.connection.driver_class是配置数据库驱动 hibernate.connection.url是配置数据库的url hibernate. ...

  6. ecma6 yield

    function * generator(k){ console.log('begin'); var x = yield k; console.log('x:',x); var y = yield x ...

  7. 一鼓作气 博客--第二篇 note2

    1.循环正常结束是指没有中间截断,即没有执行break; for i in range(10) print(i) else: print("循环正常结束") 2.嵌套循环 for ...

  8. SQL Server中CROSS APPLY和OUTER APPLY的应用详解

    SQL Server数据库操作中,在2005以上的版本新增加了一个APPLY表运算符的功能.新增的APPLY表运算符把右表表达式应用到左表表达式中的每一行.它不像JOIN那样先计算那个表表达式都可以, ...

  9. C# File.Delete文件时 提示:文件引起的访问被拒绝解决方案

    new FileInfo(f).Attributes = FileAttributes.Normal; File.Delete(f);

  10. java 多线程 继承Thread和实现Runnable的区别

    1)继承Thread: public class ThreadTest extends Thread { private int count; private String name; public ...