属性对照
MSTest | NUnit | xUnit.net | 描述 |
[TestMethod] | [Test] | [Fact] | 标记为测试方法 |
[TestClass] | [TestFixture] | n/a | 包含有测试方法的类,在xUnit.net中无需标记,它会查找程序集中所有的public的测试方法 |
[ExpectedException] | [ExpectedException] | Assert.Throws Record.Exception | 期望抛出异常 |
[TestInitialize] | [SetUp] | Constructor | 在每个测试方法执行之前用于初始化的方法 |
[TestCleanup] | [TearDown] | IDisposable.Dispose | 在每个测试方法执行之后用于结束的方法 |
[ClassInitialize] | [TestFixtureSetUp] | IUseFixture<T> | 在所有测试方法执行之前用于初始化的方法 |
[ClassCleanup] | [TestFixtureTearDown] | IUseFixture<T> | 在所有测试方法执行之后用于结束的方法 |
[Ignore] | [Ignore] | [Fact(Skip="reason")] | 临时忽略被标记的方法 |
[Timeout] | [Timeout] | [Fact(Timeout=n)] | 用于指定被测试方法的最大执行时间(单位毫秒),如果超过指定时间则会被标记为测试失败 |
[DataSource] | [TestCase] | [Theory], [XxxData] | 数据测试 |
方法
MSTest | NUnit | xUnit.net | Comments |
AreEqual | AreEqual | Equal | 相等比较 |
AreNotEqual | AreNotEqual | NotEqual | 不相等比较 |
AreNotSame | AreNotSame | NotSame | 不相同比较 |
AreSame | AreSame | Same | 相同比较 |
NUnit 打印需要引用
NUnit、 Microsoft.NET.Test.SDK、Nunit3TestAdapter
XUnit打印需要引用
Microsoft.NET.Test.SDK、XUnit、xunit.runner.visualstudio
同时测试类中增加
private readonly ITestOutputHelper output;
public UnitTest1(ITestOutputHelper output)
{
this.output = output;
}
通过 output.WriteLine输出,就可以在测试管理器相关测试方法下看见输出