Udostępnij za pośrednictwem


Testowy klient WCF (WcfTestClient.exe)

Klient testowy programu Windows Communication Foundation (WCF) (WcfTestClient.exe) to narzędzie graficznego interfejsu użytkownika, które umożliwia użytkownikom wprowadzanie parametrów testu, przesyłanie tych danych wejściowych do usługi i wyświetlanie odpowiedzi wysyłanej przez usługę. Zapewnia bezproblemowe środowisko testowania usług w połączeniu z hostem usługi WCF.

Zazwyczaj można znaleźć klienta testowego WCF (WcfTestClient.exe) w następującej lokalizacji: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE — Społeczność może być jednym z "Enterprise", "Professional" lub "Community" w zależności od poziomu zainstalowanego programu Visual Studio.

Scenariusze korzystania z klienta testowego

W poniższych sekcjach omówiono najbardziej typowe scenariusze, w których można użyć klienta testowego WCF w celu usprawnienia procesu programowania.

Wewnątrz programu Visual Studio

Host usługi WCF uruchamia klienta testowego programu WCF z jedną usługą

Po utworzeniu nowego projektu usługi WCF i naciśnięciu klawisza F5, aby uruchomić debuger, host usługi WCF rozpoczyna hostowanie usługi w projekcie. Następnie zostanie otwarty klient testowy programu WCF i wyświetli listę punktów końcowych usługi zdefiniowanych w pliku konfiguracji. Możesz przetestować parametry i wywołać usługę, a następnie powtórzyć ten proces, aby stale testować i weryfikować usługę.

Host usługi WCF uruchamia klienta testowego programu WCF z wieloma usługami

Możesz również użyć klienta testowego WCF, aby ułatwić debugowanie projektu usługi zawierającego wiele usług. Po otwarciu klienta testowego programu WCF automatycznie iteruje listę usług w projekcie i otwiera je do testowania.

Poza programem Visual Studio

Możesz również wywołać klienta testowego programu WCF (WcfTestClient.exe) poza programem Visual Studio, aby przetestować dowolną usługę w Internecie. Aby zlokalizować narzędzie, przejdź do następującej lokalizacji:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE (gdzie społeczność może być jedną z "Enterprise", "Professional" lub "Community" w zależności od poziomu programu Visual Studio zainstalowanego na komputerze)

Aby użyć narzędzia, kliknij dwukrotnie nazwę pliku, aby otworzyć go z tej lokalizacji lub uruchom go z wiersza polecenia.

Klient testowy programu WCF przyjmuje dowolną liczbę identyfikatorów URI jako argumentów wiersza polecenia. Są to identyfikatory URI usług, które można przetestować.

wcfTestClient.exe URI1 URI2 …

Po otwarciu okna Klienta testowego programu WCF kliknij pozycję Usługa dodawania plików> i wprowadź adres punktu końcowego usługi, którą chcesz otworzyć.

Interfejs użytkownika testowego klienta programu WCF

Możesz użyć klienta testowego WCF z jedną usługą lub wieloma usługami.

Operacje usługi

W lewym okienku okna głównego klienta testowego programu WCF znajduje się lista wszystkich dostępnych usług wraz z odpowiednimi punktami końcowymi i operacjami.

Po dwukrotnym kliknięciu operacji możesz wyświetlić jego zawartość w okienku po prawej stronie wewnątrz nowej karty z nazwą operacji.

W okienku po lewej stronie są również wyświetlane pliki konfiguracji klienta. Kliknij dwukrotnie dowolny element, aby wyświetlić zawartość pliku w nowym oknie z kartami w okienku po prawej stronie.

Wprowadzanie parametrów testu

Aby wyświetlić parametry testu, kliknij dwukrotnie operację, aby otworzyć ją w okienku po prawej stronie. Parametry są domyślnie wyświetlane w widoku Sformatowany i można wprowadzić dowolne wartości parametrów do przetestowania usługi.

Aby wyświetlić kod XML wiadomości, kliknij pozycję XML. Aby wysłać je do usługi, kliknij przycisk Wywołaj.

W przypadku parametru Zestawu danych kliknij przycisk ... obok pozycji Edytuj, aby edytować go w nowym oknie przedstawiającym usługę DataGrid. Zwróć uwagę na wygląd przycisków Kopiuj zestaw danych i Wklej zestaw danych . Jeśli schemat obiektu DataSet jest nieznany podczas pierwszej edycji, usługa DataGrid jest pusta. Musisz wkleić obiekt DataSet z tym samym schematem do bieżącego obiektu w usłudze DataGrid. (Zwróć uwagę, że przed operacją wklejania należy skopiować schemat z innego miejsca). Możesz również skopiować obiekt Dataset na potrzeby przyszłego użycia, klikając przycisk Kopiuj zestaw danych .

Odpowiedź usługi jest wyświetlana poniżej parametrów testu.

Uwaga

Jeśli oczekiwana wartość zwracana jest ciągiem, wynik zostanie wyświetlony jako ciąg cytowany, mimo że podane dane wejściowe nie były w cudzysłowie.

Jeśli określona operacja została określona jako jednokierunkowa podczas tworzenia kontraktu dla usługi, nie jest wyświetlana żadna odpowiedź usługi. Gdy tylko komunikat zostanie wyświetlony w kolejce do dostarczenia, zostanie wyświetlone okno dialogowe z powiadomieniem o pomyślnym wysłaniu komunikatu.

Obsługa sesji

Pole wyboru Uruchom nowy serwer proxy na karcie operacji usługi umożliwia przełączanie obsługi sesji. To pole jest domyślnie czyszczone.

Po wprowadzeniu parametrów testowych dla określonej operacji (lub innej operacji w tym samym punkcie końcowym usługi) i kliknięciu przycisku Wywołaj wiele razy z wyczyszczonego pola wyboru te operacje współużytkują jeden serwer proxy, a stan usługi jest utrwalany w wielu operacjach.

Jeśli pole wyboru Uruchom nowy serwer proxy jest zaznaczone, dla każdego wywołania zostanie uruchomiony nowy serwer proxy, zostanie zakończony poprzedni scenariusz sesji, a stan usługi zostanie zresetowany.

Edytowanie konfiguracji klienta

W okienku po lewej stronie okna głównego klienta testowego programu WCF są wyświetlane pliki konfiguracji klienta. Kliknij dwukrotnie dowolny element, aby wyświetlić zawartość pliku w okienku po prawej stronie.

Edytowanie za pomocą edytora konfiguracji usługi

Kliknij prawym przyciskiem myszy plik konfiguracji w okienku po lewej stronie i wybierz menu kontekstowe Edytuj za pomocą narzędzia SvcConfigEditor. Edytor konfiguracji usługi jest uruchamiany z zawartością konfiguracji klienta. Konfigurację można edytować i zapisywać w narzędziu.

Po zapisaniu pliku w Edytorze konfiguracji usługi klient testowy programu WCF wyświetla komunikat ostrzegawczy informujący o tym, że plik został zmodyfikowany na zewnątrz i pyta, czy chcesz go ponownie załadować.

W przypadku wybrania pozycji Tak zawartość konfiguracji na karcie "Client.dll.config" odzwierciedla zmiany wprowadzone w edytorze.

Jeśli wybierzesz pozycję Nie, zawartość konfiguracji na karcie "Client.dll.config" pozostanie niezmieniona, a zmodyfikowana zawartość zostanie automatycznie zapisana w pliku źródłowym.

Przywróć do konfiguracji domyślnej

Jeśli chcesz anulować wszystkie zmiany i przywrócić do domyślnej konfiguracji klienta, kliknij prawym przyciskiem myszy plik konfiguracji w okienku po lewej stronie i wybierz menu kontekstowe Przywróć do domyślnej konfiguracji. Domyślna wartość konfiguracji jest ładowana, a zawartość na karcie "Client.dll.config" jest przywracana.

Weryfikowanie zmian

Po załadowaniu zapisanych zmian w kliencie testowym programu WCF konfiguracja jest sprawdzana pod kątem ważności względem schematu programu WCF. Jeśli zostaną znalezione błędy, zostanie wyświetlone okno dialogowe, aby wyświetlić szczegóły błędu.

Podczas generowania serwera proxy, kompilowania binarnego lub wywoływania usługi elementy menu obsługujące edycję (czyli "Edytuj ...", "Przywróć ..." itd.) są wyłączone. Wywołanie usługi jest również wyłączone podczas ładowania zaktualizowanej konfiguracji do klienta testowego programu WCF.

Utrwalanie konfiguracji klienta

Karta Tools-Options-Client>> Configuration (Opcje opcji klienta) zawiera opcję Zawsze regeneruj ponownie konfigurację podczas uruchamiania usług, która jest domyślnie włączona. Ta opcja określa, że za każdym razem, gdy klient testowy programu WCF ładuje usługę, ponownie generuje plik konfiguracji na podstawie najnowszego kontraktu usługi i plików app.config usługi.

Jeśli edytowano konfigurację klienta dla usługi WCF i chcesz zawsze używać tego zaktualizowanego pliku do debugowania usługi, możesz usunąć zaznaczenie opcji Wygeneruj ponownie. W ten sposób nawet w przypadku zaktualizowania usługi i ponownego otwarcia klienta testowego programu WCF plik Client.dll.config jest plikiem, który został wcześniej zaktualizowany, a nie ponownie wygenerowany na podstawie zaktualizowanej usługi.

Może jednak być konieczne zmodyfikowanie pliku konfiguracji, aby był spójny z ponownie wygenerowanym serwerem proxy. Jeśli ponownie wygenerowany serwer proxy i plik konfiguracji są niezgodne z powodu zaktualizowanej usługi, błędy wystąpią po wywołaniu usługi.

Uwaga

Jeśli plik konfiguracji klienta został zmodyfikowany i wybierz go ponownie w przyszłości, możesz go znaleźć w następującej lokalizacji:

\Documents and Ustawienia\[User Account]\My Documents\Test Client Projects(Dokumenty i Ustawienia\[Konto użytkownika]\Moje dokumenty\Test projektów klienckich.

Wszystkie zaktualizowane informacje o poświadczeniach przechowywane w pliku konfiguracji klienta są chronione przez listę kontroli dostępu (ACL) tego folderu.

Dodawanie, usuwanie i odświeżanie usług

Dodawanie usługi

Kliknij pozycję File-Add> Service (Dodaj usługę), aby dodać usługę do klienta testowego programu WCF. Następnie musisz wpisać identyfikator URI (adres punktu końcowego) usługi do dodania. Adres usługi może być adresem mex lub adresem WSDL.

Listę ostatnio dodanych punktów końcowych usług można również znaleźć w podmenu Ostatnie usługi . Jeśli wybierzesz jedną z nich, określona usługa zostanie dodana do klienta testowego programu WCF.

Możesz również kliknąć prawym przyciskiem myszy katalog główny drzewa usług Moje projekty usług, a następnie wybrać pozycję Dodaj usługę , aby osiągnąć ten sam wynik.

Podczas generowania serwera proxy kompilowanie binarne lub wywołanie usługi elementy menu obsługujące dodawanie usługi są wyłączone. Wywołanie usługi jest również wyłączone.

Usuń usługę

Kliknij prawym przyciskiem myszy katalog główny usługi, aby usunąć usługę, a następnie wybierz polecenie Usuń usługę , aby usunąć usługę z klienta testowego programu WCF.

Podczas generowania serwera proxy kompilowanie binarne lub wywołanie usługi elementy menu, które obsługują usuwanie usługi, są wyłączone. Wywołanie usługi jest również wyłączone.

Odświeżanie usługi

Jeśli wprowadzono zmianę usługi podczas działania klienta testowego programu WCF i chcesz upewnić się, że implementacja klienta testowego programu WCF dla tej usługi jest aktualna, kliknij prawym przyciskiem myszy katalog główny usługi, a następnie wybierz pozycję Odśwież usługę. Pamiętaj, że po odświeżeniu stan usługi zostanie zresetowany.

Podczas generowania serwera proxy kompilowanie binarne lub wywołanie usługi elementy menu obsługujące odświeżanie usługi są wyłączone. Wywołanie usługi jest również wyłączone.

Lokalizacja plików wygenerowanych przez klienta testowego

Domyślnie klient testowy programu WCF przechowuje wygenerowany kod klienta i pliki konfiguracji w folderze "%appdata%\Local\temp\Test Client Projects". Ten folder jest usuwany po zakończeniu pracy klienta testowego programu WCF. Jeśli plik konfiguracji zostanie zmodyfikowany w kliencie testowym programu WCF, a opcja Zawsze wygeneruj ponownie konfigurację podczas uruchamiania usług jest wyłączona, zmodyfikowany plik zostanie skopiowany do folderu "CachedConfig" w obszarze "Moje dokumenty\Testowe projekty klienckie" z mapowaniem (metadata-address-to-file-name) pliku XML jako indeksu.

Możesz również uruchomić klienta testowego WCF w wierszu polecenia, użyć przełącznika /ProjectPath , aby określić nową żądaną ścieżkę do przechowywania wygenerowanych plików lub użyć /RestoreProjectPath przełącznika, aby przywrócić lokalizację domyślną. Składnia wygląda następująco:

wcfTestClient.exe /ProjectPath [desired location]

Uruchomienie tego polecenia nie powoduje otwarcia klienta testowego programu WCF. Zmieniana jest tylko lokalizacja folderu. To polecenie można uruchomić niezależnie od tego, czy klient testowy programu WCF jest uruchomiony, czy nie. Nowa lokalizacja jest stosowana po ponownym uruchomieniu klienta testowego programu WCF. Informacje o lokalizacji można zapisać w rejestrze lub w pliku WcfTestClient.exe.option w folderze "%appdata%\Local\temp\Test Client Projects".

Funkcje obsługiwane przez klienta testowego programu WCF

Poniżej znajduje się lista funkcji obsługiwanych przez klienta testowego programu WCF:

  • Wywołanie usługi: żądanie/odpowiedź i jednokierunkowy komunikat.

  • Powiązania: wszystkie powiązania obsługiwane przez Svcutil.exe.

  • Kontrolowanie sesji.

  • Kontrakt komunikatu.

  • Serializacja XML.

Poniżej znajduje się lista funkcji, które nie są obsługiwane przez klienta testowego programu WCF:

Zamykanie klienta testowego programu WCF

Klienta testowego programu WCF można zamknąć w następujący sposób:

  • W menu Plik kliknij pozycję Zakończ. Alternatywnie w oknie głównym klienta testowego programu WCF kliknij przycisk Zamknij. Obie te akcje wyłączają również automatyczne host usługi WCF i zatrzymują proces debugowania programu Visual Studio, jeśli klient testowy programu WCF został uruchomiony przez program Visual Studio.

  • Kliknij prawym przyciskiem myszy ikonę Hosta usługi WCF w obszarze powiadomień, a następnie kliknij przycisk Zakończ. Spowoduje to zamknięcie zarówno automatycznego hosta usługi WCF, jak i klienta testowego programu WCF oraz zatrzymanie procesu debugowania programu Visual Studio.

Zobacz też