Запустите службу RESTfull в Nunit для целей интеграционного тестирования. - PullRequest
0 голосов
/ 19 декабря 2011

Я создаю спокойный сервис в .NET, где я определяю интерфейс, украшенный атрибутами WebGet и WebInvoke, и размещаю его как сервис WCF.Чтобы упростить внутреннее потребление услуг компанией, я создаю класс Proxy, который реализует интерфейс службы и выполняет релевантный запрос и ответы, используя интерфейс REST, определенный для службы.

Что я хочу иметь возможность делатьЭто проверка того, что этот прокси-класс правильно выполняет реализацию сервиса через HTTP.Это было бы для обнаружения любых критических изменений в интерфейсе между ним и прокси.Я не знаю, как это сделать.Я думаю, что мне нужно раскрутить веб-сервис, но я отчасти представляю, что мне нужно будет разместить его на веб-сервере, если так, есть ли в памяти веб-сервер, который я мог бы использовать.Я не думаю, что я мог бы использовать IIS Express, поскольку я использую VS2008.Как только у меня будет запущен сервис, мой прокси сможет довольно легко с ним общаться, если я знаю URI, верно?

Или есть другой способ проверить мою реализацию прокси?

1 Ответ

0 голосов
/ 19 декабря 2011

Если вы используете WCF Web API , вы можете разместить службу внутри модульного теста.Я сделал несколько интеграционных тестов, используя эту технику.Я предлагаю только WCF Web API, потому что вы говорите о сервисах REST, а WCF Web API был разработан именно для того, чтобы упростить создание сервисов на основе REST.Если вам необходимо использовать чистый WCF с прокси-классами (прокси-серверы не нужны для веб-API WCF), вы можете проигнорировать этот ответ.

...