ServiceStack サービスは、通常のC# サービス クラスとまったく同じであり、他のクラスとまったく同じ方法でモックできます。ServiceStack サービスの最小の依存関係は、依存関係のないIService
インターフェイス マーカーを実装することであり、どのサービスもリクエスト DTO を受け入れるだけで、任意のオブジェクトを返します。
ServiceStack サービスを単体テストする 1 つの方法は、この例に示すように DirectServiceClient を使用することです。これの利点は、同じ単体テストを統合テストとして使用できることです。つまり、さまざまな 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"));