单元测试工具之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插件程序两种使用方式.能够快速构建项目和组 ...
随机推荐
- TCP/IP长连接和短连接
http://www.cnblogs.com/bigwalnut/articles/2129070.html TCP/IP通信程序设计的丰富多样性 刚接触TCP/IP通信设计的人根据范例可以很快编出一 ...
- 一个 XSD 实例
一个 XSD 实例 本节会为您演示如何编写一个 XML Schema.您还将学习到编写 schema 的不同方法. XML 文档 让我们看看这个名为 "shiporder.xml" ...
- PAT-乙级-1025. 反转链表 (25)
1025. 反转链表 (25) 时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一个常数K以及一个单链表L,请 ...
- WinDbg调试DMP格式文件
前言:WinDbg是微软开发的免费源代码级的调试工具.WinDbg可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件.本文的讨论是在安装了Debugging Tools for Win ...
- beyond compare ftp 文件夹同步
因为经常要同步服务器上的代码,今天试了一下beyond compare 的ftp同步非常爽.以前都只用了beyond compare的文件夹比较功能了,ftp功能没有使用过. 步骤1:点击:会话——& ...
- Android UI-开源框架ImageLoader的完美例子
Android开源框架ImageLoader的完美例子 2013年8月19日开源框架之Universal_Image_Loader学习 很多人都在讨论如何让图片能在异步加载更加流畅,可以显示大量图片, ...
- Servlet入门案例
开发servlet有三种方法: 1.实现Servlet接口; public interface Servlet { void init(ServletConfig var1) throws Servl ...
- Hoax or what
Hoax or what 题意是询问一个动态序列的最小值和最大值. 可以用multiset来实现. #include <stdio.h> #include <set> usin ...
- 统计 p-value 含义
p-value是一种概率:在原假设为真的前提下,出现该样本或比该样本更极端的结果的概率之和. 例子: 我们假设 H0:出现正面的概率是1/2 扔硬币20次出现了14次正面.该样本的单边p-value计 ...
- 不要在头文件中使用 using namespace std;
不要在头文件中使用(using namespace std;). 若你使用了using namespace std;,在某一头文件中,那么包含这些头文件的文件就失去了"namespace ...