单元测试--Xunit
1.安装xunit
PM> install-package xunit 正在还原 E:\xunit\XUnitTestProject1\Hospital.Test.csproj 的包... GET https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/index.json OK https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/index.json 292 毫秒 GET https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/4.3.0/system.threading.tasks.extensions.4.3.0.nupkg OK https://api.nuget.org/v3-flatcontainer/system.threading.tasks.extensions/4.3.0/system.threading.tasks.extensions.4.3.0.nupkg 97 毫秒 正在安装 System.Threading.Tasks.Extensions 4.3.0。 正在安装 NuGet 程序包 xunit 2.4.1。 正在提交还原... 正在生成 MSBuild 文件 E:\xunit\XUnitTestProject1\obj\Hospital.Test.csproj.nuget.g.props。 正在生成 MSBuild 文件 E:\xunit\XUnitTestProject1\obj\Hospital.Test.csproj.nuget.g.targets。 将资产文件写入磁盘。路径: E:\xunit\XUnitTestProject1\obj\project.assets.json E:\xunit\XUnitTestProject1\Hospital.Test.csproj 的还原在 2.21 sec 内完成。 已将“xunit 2.4.1”成功安装到 Hospital.Test 已将“xunit.abstractions 2.0.3”成功安装到 Hospital.Test 已将“xunit.analyzers 0.10.0”成功安装到 Hospital.Test 已将“xunit.assert 2.4.1”成功安装到 Hospital.Test 已将“xunit.core 2.4.1”成功安装到 Hospital.Test 已将“xunit.extensibility.core 2.4.1”成功安装到 Hospital.Test 已将“xunit.extensibility.execution 2.4.1”成功安装到 Hospital.Test 执行 nuget 操作花费时间 1.02 sec 已用时间: 00:00:03.7620448
2.简单测试
public class Class1 { [Fact] public void Add_Normal_ReturnsPassing() { var result = Add(2, 2); Assert.Equal(4,result); } [Fact] public void Add_Normal_ReturnsFails() { var result = Add(2, 2); Assert.Equal(5, result); } int Add(int x, int y) { return x + y; } }
3.测试逻辑不变,多个值测试
[Theory] [InlineData(3,2,5)] [InlineData(5,2,7)] [InlineData(6,4,10)] public void Add_Normal_ReturnsPassing2(int value1 ,int value2, int expected) { var result = Add(value1, value2); Assert.Equal(result, expected); } int Add(int x, int y) { return x + y; }
SQL Server