使用ASP.NET Core构建团队服务:从单元测试到部署的全流程指南
1. 测试与代码重构
最初的代码可能有些粗糙,但在测试通过的情况下,我们可以对测试代码和被测试代码进行重构。为了让测试通过,需要在控制器上创建 CreateTeam 方法。在实际服务中,不适合在内存中存储团队数据,因为这违反了云原生服务的无状态规则,但在测试时,内存存储是理想的选择,因为可以轻松为测试制造所需状态。
首先创建一个无操作的 CreateTeam 方法,此时测试代码可以编译但会失败。为了让测试通过,需要一个仓库(Repository)。
2. 注入模拟仓库
为了让 CreateTeamAddsTeamToList 测试通过,需要让测试套件控制控制器的内部存储,通常通过模拟对象(Mocks)、注入伪造对象(Fakes)或两者结合来实现。
创建一个名为 ITeamRepository 的接口,代码如下:
src/StatlerWaldorfCorp.TeamService/Persistence/ITeamRepository.cs
using System.Collections.Generic;
namespace StatlerWaldorfCorp.TeamService.Persistence
{
public interface ITeamRepository {
IEnumerable<Team> GetTeams(
超级会员免费看
订阅专栏 解锁全文
131

被折叠的 条评论
为什么被折叠?



