Вы должны тестировать службы по отдельности для модульного тестирования, имитируя ответы от служб, которые они будут вызывать. Таким образом, вы можете протестировать отдельные службы как небольшие единицы работы и убедиться, что они работают должным образом. Вы также можете сосредоточиться на функциональности каждого сервиса, не особенно беспокоясь о том, как сервисы взаимодействуют друг с другом на самом деле.
Я думаю, что то, что вы описываете, больше похоже на интеграционный тест. Вы должны выполнять этот тест только после того, как вы выполнили отдельные модульные тесты для конкретных служб, которые вы описали выше. По сути:
Целью интеграционного тестирования является проверка требований к функциональности, производительности и надежности, предъявляемых к основным элементам конструкции.
Для модульного тестирования ваших дуплексных сервисов, вот хорошо документированная запись в блоге, описывающая, как это сделать (с большим количеством кода): http://blogs.msdn.com/b/ploeh/archive/2008/06/28/unit-testing-duplex-wcf-services.aspx
Таким образом, вы должны создать модульные тесты, которые проверяют взаимодействие с элементами № 1 и № 4 из вашего списка (приложение -> ws1 и ws1 -> приложение), а затем взаимодействие с элементами № 2 и № 3 (ws1 -> ws2 и ws2 -> ws1), затем выполните модульное тестирование взаимодействия #3 (ws2 -> ws3). Над последним можно просто издеваться. Не вдаваясь в подробности, я бы начал с модульного тестирования.
Надеюсь, это поможет.
person
David Hoerster
schedule
24.08.2010