在 .NET Core 项目中,请说明单元测试的实践方法,并重点阐述 xUnit 框架的具体用法。
考察说明
考查候选人对 .NET Core 单元测试流程和 xUnit 框架使用的掌握程度。
回答思路
- 【回答框架 1】单元测试是验证代码单元行为的自动化测试,在 .NET Core 中通常使用测试项目模板创建,需引用被测项目和测试框架。
- 【回答框架 2】xUnit 是 .NET 生态的流行测试框架,以 [Fact] 特性标记无参数测试,以 [Theory] 配合 [InlineData] 支持参数化测试。
- 【回答框架 3】断言使用 Assert 类的静态方法,如 Equal、True、Throws,以验证期望行为;通过测试资源清理接口 IDisposable 实现。
- 【回答框架 4】测试运行通过 dotnet test 命令执行,可集成到 CI/CD 流程中,并利用 Visual Studio 或 CLI 查看结果。
- 【关键点 1】xUnit 使用 [Fact] 和 [Theory] 区分普通与参数化测试。
- 【关键点 2】断言依赖 Assert 类,异常测试用 Assert.Throws。
- 【关键点 3】通过 dotnet test 命令运行测试,集成于 CI。
- 【易错点 1】测试命名不清晰导致维护困难,应使用行为描述性命名。
- 【易错点 2】过度依赖真实外部依赖导致测试不稳定,应使用替身。