单元测试工具之Xunit
|
NUnit 2.2
|
MSTest
|
xUnit.net
|
备注
|
|
[Test]
|
[TestMethod]
|
[Fact]
|
标记为测试方法
|
|
[TestFixture]
|
[TestClass]
|
n/a
|
包含有测试方法的类,在xUnit.net中无需标记,它会查找程序集中所有的public的测试方法
|
|
[ExpectedException]
|
[ExpectedException]
|
Assert.Throws/ Record.Exception
|
期望抛出异常
|
|
[SetUp]
|
[TestInitialize]
|
Constructor(即构造函数)
|
在每个测试方法执行之前用于初始化的方法
|
|
[TearDown]
|
[TestCleanup]
|
IDisposable.Dispose
|
在每个测试方法执行之后用于结束的方法
|
|
[TestFixtureSetUp]
|
[ClassInitialize]
|
IUseFixture<T>
|
在所有测试方法执行之前用于初始化的方法
|
|
[TestFixtureTearDown]
|
[ClassCleanup]
|
IUseFixture<T>
|
在所有测试方法执行之后用于结束的方法
|
|
[Ignore]
|
[Ignore]
|
[Fact(Skip="reason")]
|
临时忽略被标记的方法
|
|
n/a
|
[Timeout]
|
[Fact(Timeout=n)]
|
用于指定被测试方法的最大执行时间(单位毫秒),如果超过指定时间则会被标记为测试失败
|
|
[Property]
|
[TestProperty]
|
[Trait]
|
Set arbitrary metadata on a test
|
|
n/a
|
[DataSource]
|
[Theory], [XxxData]
|
|
NUnit 2.2
|
MSTest
|
xUnit.net
|
备注
|
|
AreEqual
|
AreEqual
|
Equal
|
相等比较
|
|
AreNotEqual
|
AreNotEqual
|
NotEqual
|
不相等比较
|
|
AreNotSame
|
AreNotSame
|
NotSame
|
不相同比较
|
|
AreSame
|
AreSame
|
Same
|
相同比较
|
|
Contains
|
Contains (on CollectionAssert)
|
Contains
|
|
|
DoAssert
|
n/a
|
n/a
|
|
|
n/a
|
DoesNotContain (on CollectionAssert)
|
DoesNotContain
|
|
|
n/a
|
n/a
|
DoesNotThrow
|
|
|
Fail
|
Fail
|
n/a
|
可用Assert.True(false, "message")替代
|
|
Greater
|
n/a
|
n/a
|
可用Assert.True(x > y)替代
|
|
Ignore
|
Inconclusive
|
n/a
|
|
|
n/a
|
n/a
|
InRange
|
|
|
IsAssignableFrom
|
n/a
|
IsAssignableFrom
|
|
|
IsEmpty
|
n/a
|
Empty
|
|
|
IsFalse
|
IsFalse
|
False
|
|
|
IsInstanceOfType
|
IsInstanceOfType
|
IsType
|
|
|
IsNaN
|
n/a
|
n/a
|
可用Assert.True(double.IsNaN(x))替代
|
|
IsNotAssignableFrom
|
n/a
|
n/a
|
可用Assert.False(obj is Type)替代
|
|
IsNotEmpty
|
n/a
|
NotEmpty
|
|
|
IsNotInstanceOfType
|
IsNotInstanceOfType
|
IsNotType
|
|
|
IsNotNull
|
IsNotNull
|
NotNull
|
|
|
IsNull
|
IsNull
|
Null
|
|
|
IsTrue
|
IsTrue
|
True
|
|
|
Less
|
n/a
|
n/a
|
可用Assert.True(x < y)替代
|
|
n/a
|
n/a
|
NotInRange
|
确保数据在某个范围内
|
|
n/a
|
n/a
|
Throws
|
确保会抛出异常
|
- <?xml version="1.0" encoding="utf-8"?>
- <xunit>
- <assemblies>
- <assembly filename="bin\Debug\XunitDemo.exe" config-filename="bin\Debug\XunitDemo.exe.config" shadow-copy="true"/>
- <assembly filename="bin\Debug\xunit.dll" shadow-copy="true" />
- </assemblies>
- </xunit>
- using System;
- using Xunit;
- using System.Configuration;
- namespace XunitDemo
- {
- public class XunitDemo:IDisposable
- {
- public XunitDemo()
- {
- //在这里可以做测试开始前的初始化工作
- System.Console.WriteLine("Init");
- }
- [Fact]
- public void TestAdd()
- {
- Assert.Equal<int>(5, 2 + 3);
- }
- [Fact(Timeout=900)]//指定超时为900ms
- public void TestTimeout()
- {
- System.Threading.Thread.Sleep(1000);
- Assert.InRange<double>(new Random().NextDouble()*10,5,10);
- }
- [Fact]
- public void Test0_51CTOBlog()
- {
- //不区分大小写等值判断
- Assert.Equal<bool>(true,string.Equals(ConfigurationManager.AppSettings["51ctoBlog"], "http://zhoufoxcn.blog.51cto.com",StringComparison.InvariantCultureIgnoreCase);
- }
- [Fact]
- public void Test0_CSDNBlog()
- {
- Assert.Equal<string>(ConfigurationManager.AppSettings["CSDNBlog"], "http://blog.csdn.net/zhoufoxcn");
- }
- [Fact]
- public void Test0_SinaWeiBo()
- {
- Assert.Equal<string>(ConfigurationManager.AppSettings["SinaWeiBo"], "http://weibo.com/zhoufoxcn");
- }
- public void Dispose()
- {
- //在这里可以做测试结束后的收尾工作
- System.Console.WriteLine("Dispose");
- }
- }
- }
单元测试工具之Xunit的更多相关文章
- 在.NET开发中的单元测试工具之(2)——xUnit.Net
在上一篇<在.NET开发中的单元测试工具之(1)——NUnit>中讲述了如何使用NUnit在.NET开发中进行单元测试以及NUnit的一些缺点,今天将讲述如何使用xUnit.Net来进行单 ...
- 在.NET开发中的单元测试工具之(1)——NUnit
NUnit介绍 NUnit是一个专门针对于.NET来写的单元测试框架,它是xUnit体系中的一员,在xUnit体系中还有针对Java的JUnit和针对C++的CPPUnit,在开始的时候NUnit和x ...
- 在.NET开发中的单元测试工具之——NUnit
NUnit介绍 NUnit是一个专门针对于.NET来写的单元测试框架,它是xUnit体系中的一员,在xUnit体系中还有针对Java的JUnit和针对C++的CPPUnit,在开始的时候NUnit和x ...
- 主流的单元测试工具之-JAVA新特性-Annotation 写作者:组长 梁伟龙
1:什么是Annotation?Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),这个单词一般是翻译成元数据,是JAVA的一 ...
- codeblocks+Mingw 下配置开源c++单元测试工具 google test
google test 是google的c++开源单元测试工具,chrome的开发团队就是使用它. Code::Blocks 12.11(MinGW 4.7.1) (Windows版)Google T ...
- PHP单元测试工具PHPUnit初体验
今天接到了个任务,需要对数字进行计算,因为涉及到整数,小数,和科学计数法等很多条件,所以人工测试非常麻烦,于是想到了PHP的单元测试工具PHPUnit,所以写个文档备查. 看了PHPUnit的文档之后 ...
- Java单元测试工具:JUnit4(一)(二)(三)(四)
Java单元测试工具:JUnit4(一)--概述及简单例子 Java单元测试工具:JUnit4(二)--JUnit使用详解 Java单元测试工具:JUnit4(三)--JUnit详解之运行流程及常用注 ...
- 单元测试工具 SmokeTest
.NET 程序集单元测试工具 SmokeTest Smoke Test(冒烟测试),也称Regression Test(回归测试),是对软件的安装和基本功能的测试.一般地我们使用脚本来实现Smoke ...
- Web Service单元测试工具实例介绍之SoapUI
原文 Web Service单元测试工具实例介绍之SoapUI SoapUI是当前比较简单实用的开源Web Service测试工具,提供桌面应用程序和IDE插件程序两种使用方式.能够快速构建项目和组 ...
随机推荐
- EvnetBus
领域事件(EvnetBus) 文档目录 本节内容: EventBus 注入 IEventBus 获取默认实例 定义事件 预定义事件 处理完异常 实体修改 触发事件 处理事件 处理基类事件 处理程序 ...
- DB天气app冲刺二阶段第一天
原来找人也是个力气活...好费劲呀..今天的进度有点慢,,确切的说是没有什么进度 因为不会弄了..加上今天一个劲的找同学帮忙写评论.心思没定下来 根本没思路了..明天按照今天的计划继续冲刺..
- (转)[C++语法] 关键字typedef用法
转自http://www.cnblogs.com/SweetDream/archive/2006/05/10/395921.html C/C++语言中的typedef相信大家已经不陌生,本文对C/C+ ...
- centos7 下手动安装MySQL-5.6.32-1.linux_glibc2.5.x86_64.rpm-bundle
由于centos7默认不再是mysql数据库,所以度算手动安装一个. 全程参考http://www.2cto.com/database/201501/371451.html 这里摘抄以下这个链接的内容 ...
- Eclipse编辑jsp、js文件时,经常出现卡死现象解决汇总
使用Eclipse编辑jsp.js文件时,经常出现卡死现象,在网上百度了N次,经过N次优化调整后,卡死现象逐步好转,具体那个方法起到作用,不太好讲.将所有用过的方法罗列如下: 1.取消验证 windo ...
- [转载]mongoDB学习笔记——存取图片(C#)
作为一个NoSql数据库的代表,存取多媒体数据,应该是强项吧?那么,图片在mongoDB里是如何存取的呢?(其实,关系型数据库存取图片也一点问题没有,所以我看NoSql的强项不在于是否存储多媒体,而在 ...
- A geometric interpretation of the covariance matrix
A geometric interpretation of the covariance matrix Contents [hide] 1 Introduction 2 Eigendecomposit ...
- java jdbc dbcp连接SQL Server
使用到的jar: commons-collections-3.1.jar commons-dbcp-1.4.jar commons-pool-1.5.6.jar sqljdbc4.jar dbcp配置 ...
- 万网空间如何安装wordpress
万网空间如何安装wordpress建站教程 _ 学做网站论坛 http://www.xuewangzhan.com/wpbbs/1643.html 1.先在本地下载一个最新版本的wordpress ...
- MyBatis的动态SQL操作--插入
需求:向数据库中插入一条数据 //id,name,sal非空,三个字段都插入 insert into student(id,name,sal) values (?,?,?) //id,name非空,只 ...