Служебный стек и Mocking, любые учебники?

В настоящее время я оцениваю ServiceStack (для создания служб на основе отдыха в .Net). Одной из областей, представляющих интерес, является сторона тестирования. В моем сервисе по отдыху будет добавлено несколько приложений, работающих с приложениями (в настоящее время используется Autofac). Мне нужен механизм проверки остального слоя и определения ожиданий на моем уровне приложения (через MOQ), поэтому я не делаю интеграционных тестов, но проверяю этот уровень на уровне?

Любые идеи о том, как это сделать?

Ответ 1

A ServiceStack Service - это как любой обычный класс С# Service, и его можно издеваться точно так же, как и любой другой класс. Минимальная зависимость для ServiceStack Service реализует безрисковый маркер интерфейса IService и где любая служба просто принимает запрос DTO и возвращает любой объект.

Один из способов использования Unit test сервисов ServiceStack - использовать DirectServiceClient как в этом примере, преимущество этого в том, что оно позволяет вам использовать те же Unit test как тест интеграции - тестирование всех различных конечных точек XML, JSON, JSV и SOAP.

В противном случае вы можете Unit test и выполнить его как любой другой класс, например:

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"));