摘要: 引言 在上一章节a56爆大奖在线娱乐们实战了在Asp.Net Core中的项目实战,这一章节讲解一下如何测试Asp.Net Core的中间件。 TestServer 还记得a56爆大奖在线娱乐们在集成测试中提供的TestServer吗? TestServer 是由 Microsoft.AspNetCore.TestHost 包提供的。 阅读全文
posted @ 2024-04-22 08:30 董瑞鹏 阅读(525) 评论(0) 推荐(7) 编辑
摘要: 引言 集成测试可在包含应用支持基础结构(如数据库、文件系统和网络)的级别上确保应用组件功能正常。 ASP.NET Core 通过将单元测试框架与测试 Web 主机和内存中测试服务器结合使用来支持集成测试。 简介 集成测试与单元测试相比,能够在更广泛的级别上评估应用的组件,确认多个组件一起工作以生成预 阅读全文
posted @ 2024-04-19 08:00 董瑞鹏 阅读(599) 评论(2) 推荐(4) 编辑
摘要: 引言 上一章a56爆大奖在线娱乐们介绍了在xUnit单元测试中用xUnit.DependencyInject来使用依赖注入,上一章a56爆大奖在线娱乐们的Sample.Repository仓储层有一个批量注入的接口没有做单元测试,今天用这个示例来演示一下如何用Bogus创建模拟数据 ,和 EFCore 的种子数据生成 Bogus 的优 阅读全文
posted @ 2024-04-17 08:30 董瑞鹏 阅读(374) 评论(0) 推荐(4) 编辑
摘要: 引言 上一篇a56爆大奖在线娱乐们创建了一个Sample.Api项目和Sample.Repository,并且带大家熟悉了一下Moq的概念,这一章a56爆大奖在线娱乐们来实战一下在xUnit项目使用依赖注入。 Xunit.DependencyInjection Xunit.DependencyInjection 是一个用于 xUnit 阅读全文
posted @ 2024-04-15 08:30 董瑞鹏 阅读(278) 评论(1) 推荐(2) 编辑
摘要: 引言 上一章节介绍了 TDD 的三大法则,今天a56爆大奖在线娱乐们讲一下在单元测试中模拟对象的使用。 Fake Fake - Fake 是一个通用术语,可用于描述 stub或 mock 对象。 它是 stub 还是 mock 取决于使用它的上下文。 也就是说,Fake 可以是 stub 或 mock Mock - 阅读全文
posted @ 2024-04-12 09:00 董瑞鹏 阅读(374) 评论(4) 推荐(3) 编辑
摘要: 引言 在a56爆大奖在线娱乐们上一篇文章了解了单元测试的基本概念和用法之后,今天a56爆大奖在线娱乐们来聊一下 TDD(测试驱动开发) 测试驱动开发 (TDD) 测试驱动开发英文全称是Test Driven Development 简称 TDD。 根据 UncleBob 的 TDD 描述总结 a56爆大奖在线娱乐们先创建一个测试项目 直接在 VS 创建 阅读全文
posted @ 2024-04-07 09:00 董瑞鹏 阅读(353) 评论(0) 推荐(1) 编辑
摘要: 引言 在现代化的软件开发中,单元测试和集成测试是确保代码质量和可靠性的关键部分。ASP.NET Core 社区内提供了强大的单元测试框架,xUnit 是其中之一,它提供了简单、清晰和强大的测试功能,编写单元测试有许多优点;有助于回归、提供文档及辅助良好的设计。下面几节a56爆大奖在线娱乐们来深入浅出探讨如何使用 xU 阅读全文
posted @ 2024-04-03 10:58 董瑞鹏 阅读(796) 评论(4) 推荐(7) 编辑
摘要: 前言 .NET Feature Management 是一个用于管理应用程序功能的库,它可以帮助开发人员在应用程序中轻松地添加、移除和管理功能。使用 Feature Management,开发人员可以根据不同用户、环境或其他条件来动态地控制应用程序中的功能。这使得开发人员可以更灵活地管理应用程序的功 阅读全文
posted @ 2024-03-27 09:42 董瑞鹏 阅读(1820) 评论(6) 推荐(20) 编辑
摘要: 前言 a56爆大奖在线娱乐的主题是 Visual Studio 调试 NuGet 包,以及符号包的概念,如何去发布一个 NuGet 包,让a56爆大奖在线娱乐们的 NuGet 包支持 SouceLink,这些都是a56爆大奖在线娱乐们开发中比较容易忽视的内容,但是熟悉了以后可以让a56爆大奖在线娱乐们在调试中得心应手,也是开源项目开发的基础篇。 demo 源代码在文末 阅读全文
posted @ 2024-03-25 10:04 董瑞鹏 阅读(399) 评论(0) 推荐(7) 编辑
摘要: 前言 a56爆大奖在线娱乐主要讲 MinimalApis 中的使用自定义IResultModel和系统自带IResult做响应返回值。 MinimalApis支持以下类型的返回值: string - 这包括 Task<string> 和 ValueTask<string> T(任何其他类型)- 这包括 Task<T 阅读全文
posted @ 2024-03-22 08:57 董瑞鹏 阅读(514) 评论(1) 推荐(3) 编辑
摘要: 前言 上一篇文章a56爆大奖在线娱乐们讲到了Scrutor第一个核心功能Scanning,a56爆大奖在线娱乐讲解的是Scrutor第二个核心的功能Decoration 装饰器模式在依赖注入中的使用。 装饰器模式允许您向现有服务类中添加新功能,而无需改变其结构 Install-Package Scrutor a56爆大奖在线娱乐的完整源代码在文末 阅读全文
posted @ 2024-03-20 10:56 董瑞鹏 阅读(376) 评论(1) 推荐(4) 编辑
摘要: 前言 从.Net Core 开始,.Net 平台内置了一个轻量,易用的 IOC 的框架,供a56爆大奖在线娱乐们在应用程序中使用,社区内还有很多强大的第三方的依赖注入框架如: Autofac DryIOC Grace LightInject Lamar Stashbox Simple Injector 内置的依赖注入 阅读全文
posted @ 2024-03-19 08:38 董瑞鹏 阅读(1385) 评论(0) 推荐(7) 编辑
摘要: 前言 异常的处理在a56爆大奖在线娱乐们应用程序中是至关重要的,在 dotNet 中有很多异常处理的机制,比如MVC的异常筛选器, 管道中间件定义try catch捕获异常处理亦或者第三方的解决方案Hellang.Middleware.ProblemDetails等。MVC异常筛选器不太灵活,对管道的部分异常捕获不到 阅读全文
posted @ 2024-03-15 11:56 董瑞鹏 阅读(2951) 评论(2) 推荐(11) 编辑
摘要: 前言 作为开发人员,a56爆大奖在线娱乐们经常向应用程序添加新功能并修改当前的 Api。版本控制使a56爆大奖在线娱乐们能够安全地添加新功能而不会造成中断性变更。一个良好的 Api 版本控制策略可以清晰地传达所做的更改,并允许使用现有 REST Api 的客户端在准备好时才迁移或更新他们的应用程序到最新版本。 哪些行为可能会造成 Ap 阅读全文
posted @ 2024-03-14 09:45 董瑞鹏 阅读(1471) 评论(6) 推荐(4) 编辑
摘要: 前言 在Asp.Net Core 6 推出了最小 Api(MinimalApis)来简化WebApi的开发,在前后端分离的趋势下越来越多的后端服务只提供Api接口,但是用Controller的开发模式会引入MVC的架构,MinimalApis的出现就是来减少框架的依赖,让 Api 的开发更加简洁,并 阅读全文
posted @ 2024-03-12 11:02 董瑞鹏 阅读(66) 评论(0) 推荐(0) 编辑