从 TDD 到 DDD:构建 .NET Core Web API - 第 1 部分

2025-06-07

从 TDD 到 DDD:构建 .NET Core Web API - 第 1 部分

大家好!
好久不见了。

你准备好迎接另一场史诗般的冒险了吗?
这次,我们将使用 xUnit 遵循 TDD(测试驱动开发)步骤,直至 DDD(领域驱动设计)结构,构建一个完整的 .NET Core Web API。

完整的项目可以在这里找到:https://github.com/lucianopereira86/CRUD-NetCore-TDD

技术

主题

测试驱动开发 (TDD)

什么是 TDD?

它的意思是测试驱动开发,它包括在创建类、项目、验证和其他层之前为应用程序的核心功能编写单元测试。

在开发过程中,将有一个包含三个步骤的循环:红步、绿步和重构。红需要代码执行

失败,即使没有编译。绿包括成功的编译以及单元测试所期望的结果。 重构步骤将代码重构为新的功能,例如新的类或模块。 通过这个循环,您将清楚地了解程序可能存在的所有故障和确定性。问题是它需要大量的时间来开发。





项目结构

最初,我们的解决方案将有 3 层:Web API、Infra 和 Test。

Web API 层将包含控制器。
基础层将负责存储库和表模型。
测试层将包含其他层中要构建的每个功能的单元测试。

现在,让我们创建一个解决方案!

打开 Visual Studio 2019,创建一个新的 .NET Core Web 应用程序项目,并将其命名为“CRUD-NETCore-TDD”。选择 API 模板并取消选中 HTTPS 选项:

打印02

默认的 .NET Core Web API 将会创建。

删除“Controllers/WeatherForecastController.cs”和“WeatherForecast.cs”文件。在解决方案中添加一个名为“CRUD-NETCore-TDD.Infra”的 C# .NET Core 类库项目。同时删除“Class1.cs”文件。

解决方案将如下所示:

打印03

在解决方案中添加一个 .NET Core xUnit 测试项目,并将其命名为“CRUD-NETCore-TDD.Test”。删除“UnitTest1.cs”文件。

解决方案将如下所示:

打印04

从 Infra 项目添加对 Web API 项目的引用,并从其他项目添加对 Test 项目的引用。

解决方案如下所示:

打印05

下一个

让我们构建测试项目。

文章来源:https://dev.to/lucianopereira86/from-tdd-to-ddd-building-a-net-core-web-api-part-1-3964
PREV
Javascript 数组方法和示例的时间复杂度为 0。
NEXT
使用 Create-React-App 和 Express 结论