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

Der Windows Communication Foundation (WCF)Windows Communication Foundation (WCF)-Testclient (WcfTestClient.exe) ist ein GUI-Tool, mit dem Benutzer Testparameter eingeben, die Eingabe an den Dienst senden und die zurückgesendete Antwort des Diensts anzeigen können.Windows Communication Foundation (WCF)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. Zusammen mit dem WCFWCF-Diensthost ermöglicht er einen problemlosen Diensttest.It provides a seamless service testing experience when combined with WCFWCF Service Host.

Finden Sie in der Regel die WCFWCF -Testclient (WcfTestClient.exe) an folgendem Speicherort: C:\Program Files (x86) \Microsoft Visual Studio\2017\Community\Common7\IDE - Community möglicherweise "Enterprise", "Professional" oder "Community" Je nachdem, welche Stufe von Visual Studio installiert ist.You can typically find the WCFWCF 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

In den folgenden Abschnitten werden die am häufigsten auftretenden Szenarien beschrieben, in denen Sie mit dem WCFWCF-Testclient den Entwicklungsvorgang optimieren können.The following sections discuss the most common scenarios in which you can use WCFWCF 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 WCFWCF-Dienstprojekt erstellt und zum Starten des Debuggers auf F5 gedrückt haben, beginnt der WCFWCF-Diensthost Service mit dem Hosten des Diensts in Ihrem Projekt.After you create a new WCFWCF service project and press F5 to start the debugger, the WCFWCF Service Host begins to host the service in your project. Der WCFWCF-Testclient öffnet dann eine Liste der in der Konfigurationsdatei definierten Dienstendpunkte.Then, WCFWCF 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

Mit dem WCFWCF-Testclient können Sie auch ein Dienstprojekt debuggen, das mehrere Dienste enthält.You can also use WCFWCF Test Client to help debug a service project that contains multiple services. Wenn der WCFWCF-Testclient geöffnet wird, erstellt er automatisch eine Liste der Dienste in Ihrem Projekt und öffnet sie zum Testen.When WCFWCF 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

Der WCFWCF-Testclient (WcfTestClient.exe) kann auch außerhalb von Visual Studio aufgerufen werden, um einen beliebigen Dienst im Internet zu testen.You can also invoke the WCFWCF 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.

Der WCFWCF-Testclient nimmt eine beliebige Anzahl von URIs als Befehlszeilenargumente an.WCFWCF 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 …

Nach der WCFWCF Testclient-Fenster geöffnet ist, klicken Sie auf Datei->Dienst hinzufügen, und geben Sie die Endpunktadresse des Diensts, die Sie öffnen möchten.After the WCFWCF 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 den WCFWCF-Testclient mit einem einzelnen Dienst oder mehreren Diensten verwenden.You can use WCFWCF Test Client with a single service or multiple services.

DienstvorgängeService Operations

Der linke Bereich im Hauptfenster des WCFWCF-Testclients enthält alle verfügbaren Dienste sowie die entsprechenden Endpunkte und Vorgänge.The left pane of the WCFWCF 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

Im linken Bereich des Hauptfensters des WCFWCF-Testclients werden die Clientkonfigurationsdateien aufgeführt.The left pane of the WCFWCF 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 Service Configuration Editor wird vom WCFWCF-Testclient eine Warnmeldung mit dem Hinweis angezeigt, dass die Datei extern geändert wurde, und gefragt, ob die Datei neu geladen werden soll.After saving the file in Service Configuration Editor, WCFWCF 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

Beim Laden gespeicherter Änderungen im WCFWCF-Testclient wird die Konfiguration anhand des WCFWCF-Schemas auf Gültigkeit geprüft.When saved changes are being loaded in WCFWCF Test Client, the configuration is checked for validity against WCFWCF 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. Beim Laden einer aktualisierten Konfiguration im WCFWCF-Testclient ist auch das Aufrufen von Diensten deaktiviert.Service invocation is also disabled when loading updated configuration to WCFWCF 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. Durch diese Option wird angegeben, dass immer dann, wenn ein Dienst durch den WCFWCF-Testclient geladen wird, eine Konfigurationsdatei erstellt wird, die auf der neuesten Dienstvertrags- sowie auf der neuesten App.config-Datei basiert.This option specifies that every time WCFWCF Test Client loads a service, it regenerates a configuration file based on the latest service contract and service App.config files.

Wenn Sie für die Clientkonfiguration bearbeitet haben Ihre WCFWCF -Dienst und für die immer diese aktualisierte Datei verwenden, um den Dienst debuggen möchten, deaktivieren Sie die neu generieren Option.If you have edited the client configuration for your WCFWCF service and want to always use this updated file to debug your service, you can uncheck the Regenerate option. Dadurch wird anstelle einer neu generierten Datei, die auf dem aktualisierten Dienst basiert, immer die zuvor aktualisierte Client.dll.config-Datei verwendet. Dies ist auch dann der Fall, wenn der Dienst aktualisiert und der WCFWCF-Testclient erneut geöffnet wurde.By doing so, even when you update the service and reopen WCFWCF 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 zum Hinzufügen eines Diensts zu WCFWCF -Testclient.Click File->Add Service to add a service to WCFWCF 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 dem WCFWCF-Testclient hinzugefügt.If you select one of them, the specified service is added to WCFWCF 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 So entfernen Sie einen Dienst aus WCFWCF -Testclient.Right-click the service root of the service to be removed, and select Remove Service to remove a service from WCFWCF 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 beim vorgenommen wird WCFWCF -Testclient ausgeführt wird und Sie möchten, um sicherzustellen, dass die WCFWCF testclientimplementierung für diesen Dienst auf dem neuesten Stand ist, mit der rechten Maustaste in des dienststamm des Diensts, und wählen aktualisieren Dienst.If a change is made to the service while WCFWCF Test Client is running and you want to ensure that the WCFWCF 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 WCFWCF -Testclient generierte Clientcode- und Clientkonfigurationsdateien im Ordner "%appdata%\Local\temp\Test Client Projects".By default, WCFWCF Test Client stores generated client code and configuration files in the "%appdata%\Local\temp\Test Client Projects" folder. Dieser Ordner wird nach dem Schließen des WCFWCF-Testclients gelöscht.This folder is deleted after WCFWCF Test Client exits. Wenn in eine Konfigurationsdatei geändert wird WCFWCF Testclient und 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 kopiert Client Projects Documents\Test Client Projects"mit einer Zuordnung (Metadaten Adresse-zu-Dateiname) XML-Datei als Index.If a configuration file is modified in WCFWCF 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.

Alternativ kann der WCFWCF-Testclient auch von einer Befehlszeile aus gestartet werden. Verwenden Sie in diesem Fall den /ProjectPath-Schalter, um einen neuen Pfad zum Speichern der generierten Dateien anzugeben, oder verwenden Sie den /RestoreProjectPath-Schalter, um den standardmäßigen Speicherort wiederherzustellen.You can also start WCFWCF 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]

Dieser Befehl öffnet den WCFWCF-Testclient.Running this command does not open WCFWCF Test Client. Nur der Speicherort des Ordners wird geändert.Only the folder location is changed. Dieser Befehl kann unabhängig davon ausgeführt werden, ob der WCFWCF-Testclient ausgeführt wird.You can run this command whether WCFWCF Test Client is running or not. Der neue Speicherort wird übernommen, wenn der WCFWCF-Testclient neu gestartet wird.The new location is applied when WCFWCF 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

Die folgende Liste enthält die vom WCFWCF-Testclient unterstützten Features:The following is a list of features supported by WCFWCF 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.

Die folgende Liste enthält Features, die der WCFWCF-Testclient nicht unterstützt:The following is a list of features not supported by WCFWCF Test Client:

Schließen des WCF-TestclientsClosing WCF Test Client

Sie können den WCFWCF-Testclient auf einem der folgenden Wege schließen:You can close WCFWCF Test Client in the following ways:

  • Auf der Datei Menü klicken Sie auf beenden.On the File menu, click Exit. Alternativ können Sie in der WCFWCF -Testclient im Hauptfenster, klicken Sie auf schließen.Alternatively, in the WCFWCF Test Client main window, click Close. Bei beiden Vorgängen wird auch der WCFWCF-Dienst-Auto-Host geschlossen und der Visual StudioVisual Studio-Debuggingvorgang beendet, wenn der WCFWCF-Testclient durch Visual StudioVisual Studio gestartet wurde.Both of these actions also shut down WCFWCF Service Auto Host and stop the Visual StudioVisual Studio debugging process if WCFWCF Test Client was launched by Visual StudioVisual 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. Dadurch werden der WCFWCF-Dienst-Auto-Host und der WCFWCF-Testclient geschlossen und der Visual StudioVisual Studio-Debuggenvorgang wird beendet.This shuts down both WCFWCF Service Auto Host and WCFWCF Test Client and stops the Visual StudioVisual Studio debugging process.

Siehe auchSee Also

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