Как спроектировать несколько вызовов WCF? - PullRequest
0 голосов
/ 21 июня 2011

У меня есть 2 службы WCF, реализованные на C #, которые проверяют взаимодействие клиент-сервер стороннего приложения.Допустим, у меня есть интерфейс тестера на стороне сервера для службы тестирования WCF (я пропустил атрибуты и упростил интерфейсы)

interface IServerTester
{
    bool Start();
}

И один на стороне клиента:

interface IClientTester
{
    bool Start();
}

ЦельОдин из этих методов - просто запустить сервер и запустить клиент стороннего приложения.Я использую NUnit, чтобы проверить это.На верхнем уровне он выглядит как сценарий транзакции C #, где я сначала запускаю сервер, затем клиента и, наконец, проверяю их связь.

Позже я хочу легко добавить больше клиентов (запустить более одного), поэтому мне нужно добавить больше вызовов WCF к IClientTester в моем скрипте транзакции.

Я могу сделать что-то подобное, с каждым клиентом есть своя конечная точка

//Start server

//start client 1
//start client 2
//...
//start client N

Я будуНеобходимо повторно использовать код во многих других тестах. Но это, кажется, довольно длинное решение.Есть ли какая-нибудь лучшая идея или шаблон, который я могу принять?Большое спасибо!

1 Ответ

1 голос
/ 21 июня 2011

Я не уверен, что полностью следил за вашим вопросом, но для меня это звучит как необходимость в Pub / Sub. Похоже, когда сервер запускается, вы хотите, чтобы клиенты 1: M были уведомлены, а также запущены, правильно? Если это так, то сервер может опубликовать сообщение или событие, на которое подписываются все «клиенты». Вам не нужно ничего менять для добавления новых клиентов, просто подпишитесь на сообщение или событие в новой реализации клиента.

...