2012-06-18 15 views
5

Mam usługę sieciową WCF, która jest odpowiedzialna za zarządzanie pracą wysyłaną z naszych wewnętrznych aplikacji biznesowych do rozproszonego zestawu aplikacji klienckich.Jak debugować usługę WCF za pomocą dwóch aplikacji konsolowych jednocześnie?

Chciałbym móc skonfigurować aplikację konsolową, aby sfałszować aplikację wewnętrzną (aby przetestować wysyłanie pracy), a także próbować fałszywą aplikację kliencką (aby przetestować wykonywanie pracy).

Aby to zrobić, potrzebowałbym debugowania dwóch aplikacji konsoli jednocześnie z możliwością przejścia przez kod w ramach usługi WCF. Oczywiście [niepoprawne, zobacz awswer], rozwiązanie Visual Studio może mieć tylko jeden projekt startowy; krok po kroku w tym scenariuszu jest łatwy - peasy. Ale w jaki sposób mogę przejść przez usługę WCF z DWÓCH aplikacjami konsoli w tym samym czasie? (Czy można/powinienem to zrobić? Czy istnieje lepszy sposób podejścia do testowania?)

Odpowiedz

8

Oczywiście rozwiązanie Visual Studio może mieć tylko jeden projekt startowy;

To nie jest prawda.

Po kliknięciu prawym przyciskiem myszy rozwiązania w oknie Solution Explorer i wybraniu opcji "Set StartUp Projects ...", istnieje możliwość wykonania wielu projektów startowych. Pozwala to na uruchomienie obu aplikacji konsolowych w debugerze po kliknięciu Debuguj.

1

Odpowiedź Reed copsey, ale chciałbym dodać, że można również uruchomić dwie kopie Visual Studio w tym samym czasie. Wystarczy załadować rozwiązanie do każdej instancji studia wizualnego, ustawić punkty przerwania w odpowiedniej kopii studia wizualnego i nacisnąć przycisk Uruchom w każdym z nich.

1

Można debugować wiele projektów z tego samego rozwiązania, klikając je prawym przyciskiem myszy i wybierając opcję Debuguj/Rozpocznij nową instancję. Można również przejść do właściwości rozwiązania i wybrać wiele projektów startowych.

Jednak w takich sytuacjach nie debuguję wszystkich trzech aplikacji naraz, ponieważ bardzo trudno jest śledzić różne rzeczy. Maksymalnie dwa naraz i to też trudne dla większych projektów, w scenariuszach o wysokiej współbieżności. Ale nic złego, jeśli masz mały projekt.

W prawdziwej sytuacji polegałbym na protokołowaniu debugowania. Dużo i dużo rejestrowania debugowania. Do pliku lub dziennika zdarzeń, nie ma znaczenia. Jeśli zrobi się to prawidłowo i we właściwych miejscach, będzie oferować informacje zbliżone do ręcznej sesji debugowania. Może pomóc Ci znaleźć wszystkie rodzaje problemów. Mam nadzieję że to pomoże.

Powiązane problemy