WCF-Testclient (WcfTestClient.exe)WCF Test Client (WcfTestClient.exe)

Windows Communication Foundation (WCF)-Testclient (WcfTestClient.exe) ist ein GUI-Tool, das ermöglicht Benutzern die Eingabe Testparameter, die Eingabe an den Dienst senden, und zeigen die Antwort, die der Dienst zurücksendet.Windows Communication Foundation (WCF) Test Client (WcfTestClient.exe) is a GUI tool that enables users to input test parameters, submit that input to the service, and view the response that the service sends back. Es bietet eine nahtlose diensttest mit WCF-Diensthost kombiniert.It provides a seamless service testing experience when combined with WCF Service Host.

Finden Sie in der Regel die WCF-Testclient (WcfTestClient.exe) an folgendem Speicherort: C:\Program Files (x86) \Microsoft Visual Studio\2017\Community\Common7\IDE - Community ist möglicherweise eine der "Enterprise", "Professional" oder "Community" abhängig von der Ebene von Visual Studio installiert ist.You can typically find the WCF Test Client (WcfTestClient.exe) in the following location: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE - Community may be one of "Enterprise", "Professional" or "Community" depending on which level of Visual Studio is installed.

Szenarien für das Verwenden des TestclientsScenarios for Using Test Client

Den folgenden Abschnitten werden die häufigsten Szenarien, in denen Sie WCF-Testclient verwenden können, um Ihren Entwicklungsprozess zu optimieren.The following sections discuss the most common scenarios in which you can use WCF Test Client to streamline your development process.

In Visual StudioInside Visual Studio

Der WCF-Diensthost startet den WCF-Testclient mit einem einzelnen Dienst.WCF Service Host Starts WCF Test Client with a Single Service

Nachdem Sie ein neues Projekt für die WCF-Dienst erstellen, und drücken Sie F5, um den Debugger zu starten, startet den WCF-Diensthost zum Hosten des Diensts in Ihrem Projekt.After you create a new WCF service project and press F5 to start the debugger, the WCF Service Host begins to host the service in your project. Klicken Sie dann WCF-Testclient geöffnet und zeigt eine Liste der in der Konfigurationsdatei definierten Dienstendpunkte.Then, WCF Test Client opens and displays a list of service endpoints defined in the configuration file. Sie können die Parameter testen und den Dienst aufrufen und anschließend den Vorgang wiederholen, um den Dienst kontinuierlich zu testen und zu validieren.You can test the parameters and invoke the service, and repeat this process to continuously test and validate your service.

Der WCF-Diensthost startet den WCF-Testclient mit mehreren Diensten.WCF Service Host Starts WCF Test Client with Multiple Services

WCF-Testclient können auch ein Dienstprojekt Debuggen, die mehrere Dienste enthält.You can also use WCF Test Client to help debug a service project that contains multiple services. Wenn WCF-Testclient geöffnet wird, durchläuft die Liste der Dienste in Ihrem Projekt wird automatisch an und öffnet sie zum Testen.When WCF Test Client opens, it automatically iterates the list of services in your project and opens them for testing.

Außerhalb von Visual StudioOutside Visual Studio

Sie können auch die WCF-Testclient (WcfTestClient.exe) außerhalb von Visual Studio So testen Sie einen beliebigen Dienst im Internet aufrufen.You can also invoke the WCF Test Client (WcfTestClient.exe) outside Visual Studio to test an arbitrary service on the Internet. Das Tool befindet sich im folgenden Verzeichnis:To locate the tool, go to the following location:

C:\Programme\Microsoft Visual Studio 9.0\Common7\IDE\C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\

Doppelklicken Sie zum Verwenden des Tools auf den Dateinamen, um das Tool von dessen Verzeichnis aus zu öffnen, oder starten Sie das Tool mithilfe einer Befehlszeile.To use the tool, double-click the file name to open it from this location, or launch it from a command line.

WCF-Testclient nimmt eine beliebige Anzahl von URIs als Befehlszeilenargumente an.WCF Test Client takes an arbitrary number of URIs as command line arguments. Bei diesen handelt es sich um die URIs der Dienste, die getestet werden können.These are the URIs of services that can be tested.

wcfTestClient.exe URI1 URI2 …

Nachdem das Fenster des WCF-Testclient geöffnet wird, klicken Sie auf Datei->Dienst hinzufügen, und geben Sie die Endpunktadresse des Diensts, die Sie öffnen möchten.After the WCF Test Client window is opened, click File->Add Service, and enter the endpoint address of the service you want to open.

WCF-Testclient-BenutzeroberflächeWCF Test Client User Interface

Sie können WCF-Testclient mit einem einzelnen Dienst oder mehrere Dienste verwenden.You can use WCF Test Client with a single service or multiple services.

DienstvorgängeService Operations

Linke Bereich des Hauptfensters WCF-Testclient Listet alle verfügbaren Dienste sowie die entsprechenden Endpunkte und Vorgänge.The left pane of the WCF Test Client main window lists all the available services, along with their respective endpoints and operations.

Durch Doppelklicken auf einen Vorgang wird dessen Inhalt im rechten Bereich auf einer neuen Registerkarte angezeigt, die mit dem Namen des Vorgangs versehen ist.When you double-click an operation, you can view its content in the right pane inside a new tab with the operation's name.

Im linken Bereich werden auch die Clientkonfigurationsdateien aufgeführt.The left pane also lists client configuration files. Doppelklicken Sie auf eines der Elemente, um den Inhalt der Datei im rechten Bereich in einem neuen Fenster mit Registerkarten anzuzeigen.Double-click any of the items to display the content of the file in a new tabbed window in the right pane.

Eingeben der TestparameterEntering Test Parameters

Doppelklicken Sie zur Anzeige der Testparameter auf einen Vorgang, um ihn im rechten Bereich zu öffnen.To view the test parameters, double-click an operation to open it in the right pane. Die Parameter werden im gezeigten formatiert Ansicht standardmäßig, und Sie können beliebige Werte für die Parameter für den Dienst zu testen eingeben.The parameters are showed in Formatted view by default, and you can enter arbitrary values for the parameters to test the service.

Um die Nachricht XML anzuzeigen, klicken Sie auf XML.To view the message's XML, click XML. Um sie an den Dienst zu senden, klicken Sie auf Invoke.To send them to the service, click Invoke.

Für einen datasetparameter, klicken Sie auf der ...For a DataSet parameter, click the neben bearbeiten...button next to Edit… So bearbeiten Sie es in einem neuen Fenster, dem das DataGrid angezeigt.to edit it in a new window showing the DataGrid. Beachten Sie die Darstellung der DataSet kopieren und DataSet einfügen Schaltflächen.Notice the appearance of the Copy DataSet and Paste DataSet buttons. Wenn das Schema des DataSet-Objekts bei der ersten Bearbeitung unbekannt ist, ist das DataGrid leer.If the schema of the DataSet object is unknown upon the first edit, the DataGrid is empty. Sie müssen ein DataSet-Objekt mit dem gleichen Schema in das aktuelle Objekt im DataGrid einfügen.You have to paste a DataSet object with the same schema into the current object in the DataGrid. (Beachten Sie, dass Sie das Schema vor dem Einfügevorgang an anderer Stelle kopieren müssen.) Sie können auch ein Dataset-Objekt für die zukünftige Verwendung kopieren, indem Sie auf die DataSet kopieren Schaltfläche.(Notice that you need to copy the schema from somewhere else before the paste operation.) You can also copy a Dataset object for future usage by clicking the Copy DataSet button.

Die Antwort des Dienstes wird unter den Testparametern angezeigt.The service's response appears below the test parameters.

Hinweis

Ist der erwartete Rückgabewert eine Zeichenfolge, wird das Ergebnis als Zeichenfolge in Anführungszeichen angezeigt, auch wenn die Eingabe selbst nicht in Anführungszeichen angegeben wurde.If the expected return value is a string, the result will be displayed as a quoted string even though the input provided was not in quotes.

Wenn Sie einen bestimmten Vorgang beim Erstellen des Dienstvertrags als einseitig festgelegt haben, wird keine Dienstantwort angezeigt.If you specified a particular operation as one-way when you created the contract for the service, no service response is displayed. Sobald die Nachricht für die Lieferung in die Warteschlange gestellt wird, wird ein Dialogfeld angezeigt, dass die Nachricht erfolgreich gesendet wurde.As soon as the message is queued for delivery, a dialog box pops up to notify you that the message was successfully sent.

SitzungsunterstützungSession Support

Die neuen Proxy starten Kontrollkästchen in einem Dienstvorgang Registerkarte ermöglicht es Ihnen sitzungsunterstützung.The Start a new proxy check box in a service operation's tab enables you to toggle session support. Dieses Kontrollkästchen ist in der Standardeinstellung deaktiviert.This box is cleared by default.

Wenn Sie Testparameter für einen bestimmten Vorgang (oder ein anderer Vorgang im gleichen Dienstendpunkt) eingeben, und klicken Sie auf Invoke mehrmals mit dem das Kontrollkästchen deaktiviert ist, diese Vorgänge gleiche Proxy und der Dienststatus über mehrere Vorgänge hinweg beibehalten.When you enter test parameters for a specific operation (or another operation in the same service endpoint) and click Invoke multiple times with the check box cleared, these operations share one proxy and the service status is persisted across multiple operations.

Wenn die neuen Proxy starten das Kontrollkästchen aktiviert ist, wird ein neuer Proxy gestartet für jede Invoke, das vorherige sitzungsszenario wird beendet, und der Dienststatus wird zurückgesetzt.If the Start a new proxy check box is checked, a new proxy is started for each Invoke, the previous session scenario is ended, and the service status is reset.

Bearbeiten der ClientkonfigurationEditing Client Configuration

Linke Bereich des Hauptfensters WCF-Testclient Clientkonfigurationsdateien aufgeführt.The left pane of the WCF Test Client main window lists client configuration files. Doppelklicken Sie auf eines der Elemente, um im rechten Bereich die Inhalte der Datei anzuzeigen.Double-click any of the items to display the contents of the file in the right pane.

Bearbeiten mit dem Service Configuration EditorEdit with Service Configuration Editor

Mit der rechten Maustaste Datei "App.config" im linken Bereich, und wählen Sie im Kontextmenü den Befehl mit SvcConfigEditor bearbeiten.Right-click Config File in the left pane and select the context menu Edit with SvcConfigEditor. Der Service Configuration Editor wird mit dem Clientkonfigurationsinhalt gestartet.Service Configuration Editor is launched with the client configuration content. Sie können die Konfiguration bearbeiten und innerhalb des Tools speichern.You can edit the configuration and save it within the tool.

Nach dem Speichern der Datei im Dienstkonfigurations-Editor zeigt die WCF-Testclient eine Warnmeldung aus, um Sie zu informieren, die die Datei extern geändert wurde und Sie werden gefragt, ob Sie sie erneut laden möchten.After saving the file in Service Configuration Editor, WCF Test Client displays a warning message to inform you that the file has been modified outside and asks whether you would like to reload it.

Bei Auswahl des Ja, der konfigurationsinhalt auf der Registerkarte "Client.dll.config" widerspiegelt, die Sie im Editor vorgenommenen Änderungen.If you select Yes, the configuration content in the "Client.dll.config" tab reflects the changes you made in the editor.

Bei Auswahl des keineder konfigurationsinhalt auf der Registerkarte "Client.dll.config" unverändert, und der geänderte Inhalt wird automatisch in der Quelldatei gespeichert.If you select No, the configuration content in the "Client.dll.config" tab remains unchanged and the modified content is automatically saved to the source file.

Wiederherstellen der StandardkonfigurationRestore to Default Configuration

Sollen alle Änderungen Abbrechen und Wiederherstellen der standardmäßigen Clientkonfiguration, mit der rechten Maustaste Datei "App.config" im linken Bereich, und wählen Sie im Kontextmenü den Befehl Standardkonfiguration wiederherstellen. Der standardkonfigurationswert wird geladen und Inhalt in der Registerkarte "Client.dll.config" wird wiederhergestellt.If you want to cancel all the changes and restore to the default client configuration, right-click Config File in the left pane and select the context menu Restore to Default Config. The default configuration value is loaded and content in "Client.dll.config" tab is restored.

Überprüfen von ÄnderungenValidate Changes

Wenn die Änderungen gespeicherte in WCF-Testclient geladen werden, wird die Konfiguration auf Gültigkeit für WCF-Schema überprüft.When saved changes are being loaded in WCF Test Client, the configuration is checked for validity against WCF schema. Sind Fehler vorhanden, wird ein Dialogfeld mit Fehlerdetails angezeigt.If errors are found, a dialog box is displayed to show error details.

Während der Proxygenerierung, binärkompilierung oder Dienst aufrufen werden die Menüelemente, bearbeiten (d. h. "Bearbeiten...", "Wiederherzustellen...", usw.) unterstützen, deaktiviert.During proxy generation, binary compiling, or service invoking, menu items that support editing (that is, "Edit …", "Restore …", and so on) are disabled. Aufrufen von Diensten ist auch deaktiviert werden, wenn laden Configuration auf WCF-Testclient aktualisiert.Service invocation is also disabled when loading updated configuration to WCF Test Client.

Beibehalten der ClientkonfigurationPersist Client Configuration

Die Tools->Optionen->Clientkonfiguration Registerkarte enthält ein immer neu generieren Konfiguration beim Starten Dienste Option, die standardmäßig aktiviert ist.The Tools->Options->Client Configuration tab contains an Always Regenerate Config When Launching Services option, which is enabled by default. Diese Option gibt an, dass jedes Mal, wenn einen Dienst von WCF-Testclient geladen wird, eine Konfigurationsdatei, die basierend auf den neuesten Dienstvertrag und die "App.config" Dienstdateien erneut generiert.This option specifies that every time WCF Test Client loads a service, it regenerates a configuration file based on the latest service contract and service App.config files.

Wenn Sie die Clientkonfiguration für den WCF-Dienst bearbeitet haben und immer diese aktualisierte Datei verwenden, um den Dienst zu debuggen, deaktivieren Sie möchten die Regenerieren Option.If you have edited the client configuration for your WCF service and want to always use this updated file to debug your service, you can uncheck the Regenerate option. Selbst wenn Sie den Dienst zu aktualisieren und erneut WCF-Testclient öffnen, ist die Client.dll.config-Datei auf diese Weise, die Sie zuvor anstelle einer neu aktualisiert eine auf dem aktualisierten Dienst basierend.By doing so, even when you update the service and reopen WCF Test Client, the Client.dll.config file is the one you updated previously instead of a regenerated one based on the updated service.

Die Konfigurationsdatei muss jedoch möglicherweise bearbeitet werden, um sie mit dem neu generierten Proxy abzustimmen.However, you might need to edit the configuration file to make it consistent with the regenerated proxy. Stimmen der neu generierte Proxy und die Konfigurationsdatei aufgrund eines aktualisierten Diensts nicht überein, treten beim Aufrufen des Diensts entsprechende Fehler auf.If the regenerated proxy and configuration file are mismatched due to an updated service, errors will occur when the service is invoked.

Achtung

Für den Fall, dass Sie die Clientkonfigurationsdatei geändert haben und später wieder verwenden möchten, finden Sie die Datei im folgenden Verzeichnis:If you have modified the client configuration file and select to reuse it in the future, you can find the file in the following location:

\Documents and Settings\[Benutzerkonto] \My Documents\Test Client Projects.\Documents and Settings\[User Account]\My Documents\Test Client Projects.

Aktualisierte Anmeldeinformationen, die in der Clientkonfigurationsdatei gespeichert sind, sind durch die Zugriffsteuerungsliste (Access Control List, ACL) dieses Ordners geschützt.Any updated credential information stored to the client configuration file is protected by the Access Control List (ACL) of this folder.

Hinzufügen, Entfernen und Aktualisieren von DienstenAdding, Removing and Refreshing Services

Hinzufügen eines DienstsAdd Service

Klicken Sie auf Datei->Dienst hinzufügen WCF-Testclient einen Dienst hinzu.Click File->Add Service to add a service to WCF Test Client. Geben Sie anschließend den URI (die Endpunktadresse) des hinzuzufügenden Diensts ein.You are then required to type the URI (endpoint address) of the service to be added. Bei der Adresse des Diensts kann es sich um eine mex-Adresse oder um eine WSDL-Adresse handeln.The service’s address can be a mex address or WSDL address.

Sie erhalten auch eine Liste der 10 zuletzt hinzugefügten Dienstendpunkten in der zuletzt verwendete Dienste Untermenü.You can also find a list of 10 recently added services' endpoints in the Recent Services submenu. Wenn Sie eine dieser Optionen auswählen, wird der angegebene Dienst WCF-Testclient hinzugefügt.If you select one of them, the specified service is added to WCF Test Client.

Sie können auch mit der rechten Maustaste den Stamm der Dienststruktur Meine Dienstprojekte, und wählen Sie Dienst hinzufügen um dasselbe Ergebnis zu erzielen.You can also right-click the root of service tree My Service Projects, and select Add Service to achieve the same result.

Menüelemente, die das Hinzufügen eines Diensts unterstützen, sind während der Proxygenerierung, Binärkompilierung sowie während Dienstaufrufen deaktiviert.During proxy generation, binary compiling, or service invocation, menu items that support adding a service are disabled. Auch das Aufrufen von Diensten ist deaktiviert.Service invocation is also disabled.

Entfernen eines DienstsRemove Service

Mit der rechten Maustaste in des dienststamm des Diensts entfernt werden soll, und wählen Sie Dienst entfernen an einen Dienst vom WCF-Testclient zu entfernen.Right-click the service root of the service to be removed, and select Remove Service to remove a service from WCF Test Client.

Menüelemente, die das Entfernen eines Diensts unterstützen, sind während der Proxygenerierung, Binärkompilierung sowie während Dienstaufrufen deaktiviert.During proxy generation, binary compiling, or service invocation, menu items that support removing a service are disabled. Auch das Aufrufen von Diensten ist deaktiviert.Service invocation is also disabled.

Aktualisieren eines DienstsRefresh Service

Wenn eine Änderung an den Dienst vorgenommen wird während WCF-Testclient ausgeführt wird und Sie sicherstellen möchten, dass die WCF-Testclient-Implementierung für diesen Dienst auf dem neuesten Stand ist, mit der rechten Maustaste des dienststamm des Diensts, und wählen Dienst aktualisieren.If a change is made to the service while WCF Test Client is running and you want to ensure that the WCF Test Client implementation for that service is up-to-date, right-click the service root of the service, and select Refresh Service. Der Dienststatus wird nach der Aktualisierung zurückgesetzt.Note that after refreshing, the service status is reset.

Menüelemente, die das Aktualisieren eines Diensts unterstützen, sind während der Proxygenerierung, Binärkompilierung sowie während Dienstaufrufen deaktiviert.During proxy generation, binary compiling, or service invocation, menu items that support refreshing a service are disabled. Auch das Aufrufen von Diensten ist deaktiviert.Service invocation is also disabled.

Speicherort der vom Testclient generierten DateienLocation of Files Generated by the Test Client

Standardmäßig generiert die WCF-Testclient Client Clientcode- und Clientkonfigurationsdateien im Ordner "%appdata%\Local\temp\Test Client Projects".By default, WCF Test Client stores generated client code and configuration files in the "%appdata%\Local\temp\Test Client Projects" folder. Dieser Ordner wird gelöscht, nachdem WCF-Testclient beendet wird.This folder is deleted after WCF Test Client exits. Wenn im WCF-Testclient eine Konfigurationsdatei geändert wird und die immer neu generieren Konfiguration beim Starten von Diensten Option deaktiviert ist, wird die geänderte Datei in den Ordner "Cached Config" unter "Eigene Dateien\test Client Projects kopiert Dateien\test Client Projects"mit einer Zuordnung (Metadaten Adresse-zu-Dateiname) XML-Datei als Index.If a configuration file is modified in WCF Test Client and the Always Regenerate Config When Launching Services option is disabled, the modified file is copied to the "Cached Config" folder under "My Documents\Test Client Projects Documents\Test Client Projects" with a mapping (metadata-address-to-file-name) XML file as an index.

Sie können die WCF-Testclient auch starten, in einer Befehlszeile verwenden die /ProjectPath Schalter, um einen neuen Pfad zum Speichern der generierten Dateien anzugeben, oder verwenden Sie die /RestoreProjectPath Schalter, um den standardmäßigen Speicherort wiederherzustellen.You can also start WCF Test Client in a command line, use the /ProjectPath switch to specify a new desired path for storing generated files, or use the /RestoreProjectPath switch to restore the default location. Die Syntax lautet wie folgt:The syntax is as follows:

wcfTestClient.exe /ProjectPath [desired location]

Mit diesem Befehl wird die WCF-Testclient nicht geöffnet.Running this command does not open WCF Test Client. Nur der Speicherort des Ordners wird geändert.Only the folder location is changed. Sie können diesen Befehl ausführen, ob WCF-Testclient oder nicht ausgeführt wird.You can run this command whether WCF Test Client is running or not. Der neue Speicherort wird angewendet, wenn WCF-Testclient neu gestartet wird.The new location is applied when WCF Test Client is restarted. Informationen zum Speicherort kann in der Registrierung oder in der WcfTestClient.exe.option-Datei im Ordner "%appdata%\Local\temp\Test Client Projects" gespeichert werden.The location information can be saved in registry, or in the WcfTestClient.exe.option file in the "%appdata%\Local\temp\Test Client Projects" folder.

Vom WCF-Testclient unterstützte FunktionenFeatures supported by WCF Test Client

Im folgenden finden eine Liste der vom WCF-Testclient unterstützte Funktionen:The following is a list of features supported by WCF Test Client:

  • Dienstaufruf: Anforderung/Antwort und unidirektionale Nachricht.Service Invocation: Request/Response and One-way message.

  • Bindungen: alle von Svcutil.exe unterstützten Bindungen.Bindings: all bindings supported by Svcutil.exe.

  • SitzungssteuerungControlling Session.

  • NachrichtenvertragMessage Contract.

  • XML-SerialisierungXML serialization.

Im folgenden finden eine Liste der Funktionen von WCF-Testclient nicht unterstützt:The following is a list of features not supported by WCF Test Client:

Schließen des WCF-TestclientsClosing WCF Test Client

Sie können WCF-Testclient auf folgende Weise schließen:You can close WCF Test Client in the following ways:

  • Auf der Datei Menü klicken Sie auf beenden.On the File menu, click Exit. Alternativ klicken Sie im Hauptfenster von WCF-Testclient auf schließen.Alternatively, in the WCF Test Client main window, click Close. Sowohl dieser Aktionen auch WCF-Dienst-Auto-Host heruntergefahren und der Visual Studio-debugging-Prozess zu beenden, wenn WCF-Testclient von Visual Studio gestartet wurde.Both of these actions also shut down WCF Service Auto Host and stop the Visual Studio debugging process if WCF Test Client was launched by Visual Studio.

  • Mit der rechten Maustaste die WCF-Diensthost Symbol im Infobereich, und klicken Sie dann auf beenden.Right-click the WCF Service Host icon in the notification area, and then click Exit. Diese WCF-Dienst-Auto-Host und WCF-Testclient heruntergefahren, und die Visual Studio-debuggingvorgang beendet.This shuts down both WCF Service Auto Host and WCF Test Client and stops the Visual Studio debugging process.

Siehe auchSee Also

WCF-Diensthost (WcfSvcHost.exe)WCF Service Host (WcfSvcHost.exe)