gpt4 book ai didi

testing - 服务栈和模拟,有教程吗?

转载 作者:行者123 更新时间:2023-11-28 19:42:30 26 4
gpt4 key购买 nike

我目前正在评估 ServiceStack(以在 .Net 中创建基于休息的服务)。感兴趣的领域之一是测试方面。我的休息服务将注入(inject)许多应用程序服务(目前使用 Autofac)。我需要的是一种机制来测试其余层并在我的应用层上定义期望(通过最小起订量),所以我不是在进行集成测试而是对该层进行单元测试?

关于如何做到这一点有什么想法吗?

最佳答案

A ServiceStack Service就像任何普通的 C# 服务类一样,可以像任何其他类一样以完全相同的方式进行模拟。 ServiceStack 服务的最小依赖性是实现无依赖性的 IService 接口(interface)标记,其中任何服务只接受 Request DTO 并返回任何对象。

对 ServiceStack 服务进行单元测试的一种方法是使用 DirectServiceClient 作为 seen in this example ,这样做的好处是它允许您使用相同的单元测试作为集成测试 - 测试所有不同的 XML、JSON、JSV 和 SOAP 端点。

否则你可以像其他任何类一样对它进行单元测试和模拟,例如:

var service = new TestService {
MyDependency = new Mock<IMyDependency>().Object
};
var response = service.Get(new Test { Id = 1 });
Assert.That(response.Result, Is.EqualTo("Hello, 1"));

关于testing - 服务栈和模拟,有教程吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9586427/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com