0


基于MSTest框架创建一个简单的C#单元测试(Visual Studio 2019版)

基于MSTest框架创建一个简单的C#单元测试(Visual Studio 2019版)

1、环境准备

环境:

IDE:Visual Studio 2019

单元测试框架:MSTest

.NET版本:.NET Core 3.1

Test.Sdk版本:Microsoft.NET.Test.Sdk 16.9.4

目的:

编写单元测试方法以验证 BankAccount 类的 Debit 方法,至少需要检查三种行为:

(1)如果借方金额有效(借方金额小于余额且大于零),会从帐户余额中减去借方金额。

(2)如果借方金额小于零,该方法会引发 ArgumentOutOfRangeException。

(3)如果借方金额大于余额,该方法将引发 ArgumentOutOfRangeException 。

完整代码下载:GitHub - weibo01/MSTest: 基于MSTest框架创建C#单元测试

2、创建一个被测试项目

(1)打开 Visual Studio,选择“创建新项目”

(2)选择 C#“控制台”项目模板

(3)项目命名为“Bank”

(4)选择目标框架,然后选择“创建”

(5)添加业务代码

将Program.cs 文件重命名为 BankAccount.cs,具体代码见附件。

3、创建单元测试项目

(1)新建项目

在“文件” 菜单上,选择“添加” > “新建项目” ,在 "搜索" 框中键入 test ,选择 c # 作为语言,然后选择 "c # MSTest 测试项目"模板,然后单击"下一步"。

(2)添加项目引用

将单元测试项目命名为“BankTests”,然后单击“下一步” ,选择目标框架然后选择“创建”。

在“BankTests” 项目中,添加对“Bank” 项目的引用。(选择 " banktests" "项目,右键选择“添加”->“项目引用”,在“引用管理器”对话框中,展开“项目”,选择“解决方案”,然后选中“Bank”项。)

(3)添加单测代码

从 BankTests 项目中选择 UnitTest1.cs 文件,添加相应测试代码(见附件),并将UnitTest1.cs 文件重命名为BankAccountTests.cs

向测试类中添加 using 语句,供测试项目调用,而无需使用完全限定名。 在类文件顶部添加:using BankAccountNS;

到此,被测项目和测试项目代码已编写完成,整体代码结构如下图:

4、执行测试

运行测试:测试-》运行所有测试

单元测试已发现一个 bug:取款金额本应从帐户余额中减去,结果却添加到帐户余额中。

修改Bug后再次执行测试:

5、说明

(1)测试方法[TestMethod]

测试方法[TestMethod]必须满足以下要求:

(1)使用 [TestMethod] 特性进行修饰

(2)它将返回 void

(3)它不能含有参数

(2)测试类[TestClass]

测试类[TestClass] 最低要求:

(1)任何包含要在“测试资源管理器”中运行的单元测试方法的类都需要有 [TestClass] 特性。

(2)“测试资源管理器”识别的每个测试方法都必须具有 [TestMethod] 属性。

(3)单元测试项目中可以具有不含 [TestClass] 特性的其他类,测试类中可以具有不含 [TestMethod] 特性的其他方法。

标签: C# 单元测试 MSTest

本文转载自: https://blog.csdn.net/weibo1230123/article/details/124887055
版权归原作者 魏波. 所有, 如有侵权,请联系我们删除。

“基于MSTest框架创建一个简单的C#单元测试(Visual Studio 2019版)”的评论:

还没有评论