无名 发表于 2022-5-8 17:04:04

【LSP】.NetCore常用单元测试框架


.NET Core下主要有三种测试框架:XUnit, NUnit, 和 Visual Studio(MSTest)http://cdn.u1.huluxia.com/g4/M01/5C/0D/rBAAdl9vV8iACYGgAACt4WdlvYs201.jpg
除了标注测试类和方法的特性用的不一样之外,都非常相似。

1、NUnit的传值测试:http://cdn.u1.huluxia.com/g4/M01/5C/0B/rBAAdl9vVzuAX8UrAABrji7i-vI349.png


View Code
2、XUnit的传值测试:

XUnit使用标签声明单元测试,这是最常用的使用方式,这种方式中,测试方法不带有参数。还有一种方式,可以向测试方法传递参数,这就需要使用标签,在Theory标签下,可以使用InlineData声明多组输入参数,每组输入参数与测试方法中定义的输入参数相对应。这样一个测试方法可以进行多个参数不同的单元测试。

View Code
结果:http://cdn.u1.huluxia.com/g4/M01/5C/0B/rBAAdl9vVzuABSA1AAAekKAdtIk718.png


包括Abp在内的开源框架用的都是XUnit或NUnit。

3、MSTest的传值测试:http://cdn.u1.huluxia.com/g4/M01/5C/0B/rBAAdl9vVzuAGbHyAAAV_N6SNWA649.png
http://cdn.u1.huluxia.com/g4/M01/5C/0B/rBAAdl9vVzyAOLQkAAAo0usyDbU838.png


View Code
总结:其实不用顾虑那么多,随便选择吧,MSTest对Vs的集成是最好的,而且也很容易上手,如果哪一天碰到它所无法解决的事情,切换到其他框架也非常简单,仅仅只是Nuget下个包,换下特性而已。
页: [1]
查看完整版本: 【LSP】.NetCore常用单元测试框架