WSDL.exe - генерировать интерфейс, а также конкретный класс для упрощения подделки / имитации позже

Можно ли заставить WSDL.exe генерировать интерфейсы, а также или вместо конкретных классов, когда он генерирует прокси для веб-сервиса?

Мы используем сторонний веб-сервис из приложения ASP.Net и хорошо сгенерировали наши прокси-классы с помощью WSDL.exe.

Теперь я хочу написать тесты для моей оболочки и бизнес-классов, обманывая веб-сервис. Для прокси-сервера нет интерфейса или абстрактного базового класса, и они помечены как внутренние, что означает, что я могу ' я могу наследовать от них, не помещая мой тестовый код Fake / mock в мой бизнес-проект / сборки.

Я мог бы вручную создать интерфейс (используя resharper) и отредактировать класс, однако, если третья часть изменит их WSDL / веб-сервис, я или моим преемникам также придется вручную редактировать интерфейс и автоматически генерировать классы, что никогда не кажется хорошей идеей.

Какой самый элегантный способ подделать или имитировать эту службу? Стоит ли ставить фейк в бизнес-проект? Следует ли мне вручную редактировать файлы и создавать интерфейс? Должен ли я сделать что-то совершенно другое?

7
задан Andrew M 21 September 2010 в 21:28
поделиться