.net 测试框架,比较常用的有以下三个:
- msTest:官方的测试框架,集成在 visual studio 中;
- NUnit:用的人最多;
- XUnit:类似 NUnit,但比较新,由 NUnit v2 的作者新写的;
总体上都能满足基本的测试需求,在此选择较新的 xunit 。
XUnit 入门
- 1、在 vs 中新建测试项目 xUnitTestDemo;
- 2、用 vs 自带的包管理工具 nuget 下载安装 xunit;
- 3、编写测试单元,如:
using Xunit;
namespace xunitTestDemo
{
public class Class1
{
[Fact]
public void PassingTest()
{
Assert.Equal(4, Add(2, 2));
}
[Fact]
public void FailingTest()
{
Assert.Equal(5, Add(2, 2));
}
int Add(int x, int y)
{
return x + y;
}
}
}
-
4、用 nuget 安装 xunit.runner.console;
-
5、用 xunit.runner.console 控制台运行已编译好的 dll,可以看到测试结果,如图:
image.png
-
6、写 theory 测试
前面写的是 fact,针对的结果为 true 的情况,条件是不变的,而 theory 针对的是特定的数据才为 true,例子如下:
[Theory]
[InlineData(3)]
[InlineData(5)]
[InlineData(6)]
public void MyFirstTheory(int value)
{
Assert.True(IsOdd(value));
}
bool IsOdd(int value)
{
return value % 2 == 1;
}
以上给定一组数据 3、5、6,分别测试是否为奇数;
-
7、用 vs 中的工具 Test Explorer 测试
第 4-5 中的工具 xunit.runner.console ,命令运行测试较麻烦,可以 visual studio 界面测试工具来代替;
需先用 nuget 下载 xunit.runner.visualstudio,然后点击 vs 中的 Test-Windows-Test Explorer 调出测试界面,会列出测试的单元,点击 Run All,运行测试,结果如图:
image.png
更多例子请参考官方文档。
网友评论