本教程演示如何通过将测试项目添加到解决方案来自动执行单元测试。
先决条件
- 本教程适用于在使用 Visual Studio 创建 .NET 类库 源社区中创建的解决方案。
创建单元测试项目
单元测试在开发和发布期间提供自动化的软件测试。 MSTest 是可供选择的三个测试框架之一。 其他两个是 xUnit 和 nUnit。
启动 Visual Studio。
打开在ClassLibraryProjects中创建的 ClassLibraryProjects 解决方案。
将名为“StringLibraryTest”的新单元测试项目添加到解决方案。
- 在“解决方案资源管理器”中右键单击解决方案并选择“添加”“新建项目”。
- 在“添加新项目”页面,在搜索框中输入“mstest”。 从“语言”列表中选择“C#”或“Visual Basic”,然后从“平台”列表中选择“所有平台”。
- 选择“MSTest 测试项目”模板,然后选择“下一步” 。
- 在“配置新项目”页面,在“项目名称”框中输入“StringLibraryTest”。 然后选择“下一步” 。
- 在“其他信息”页的“框架”框中选择“.NET 6 (长期支持)” 。 然后选择“创建”。
此时,Visual Studio 会创建项目,并在具有以下代码的代码窗口中打开类文件。 如果未显示想要使用的语言,请更改页面顶部的语言选择器。
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace StringLibraryTest
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
}
}
}
单元测试模板创建的源代码负责执行以下操作:
- 它会导入 Microsoft.VisualStudio.TestTools.UnitTesting 命名空间,其中包含用于单元测试的类型。
- 向 UnitTest1 类应用 TestClassAttribute 特性。
- 它应用 TestMethodAttribute 特性来定义 C# 中的 TestMethod1 或 Visual Basic 中的 TestSub。
使用 [TestClass] 标记的测试类中标记有 [TestMethod] 的所有测试方法都会在单元测试运行时自动执行。
添加项目引用
对于要使用 StringLibrary 类的测试库,请在 StringLibraryTest 项目中添加对 StringLibrary 项目的引用。
- 在“解决方案资源管理器”中,右键单击“StringLibraryTest”项目的“依赖项”节点,并从上下文菜单中选择“添加项目引用” 。
- 在“引用管理器”对话框中,展开“项目”节点,并选择“StringLibrary”旁边的框 。 添加对 StringLibrary 程序集的引用后,编译器可以在编译 StringLibraryTest 项目时查找 StringLibrary