WCF Test Client (WcfTestClient.exe)
Windows Communication Foundation (WCF) Test Client (WcfTestClient.exe) je nástroj grafického uživatelského rozhraní, který umožňuje uživatelům zadat parametry testu, odeslat tento vstup do služby a zobrazit odpověď, kterou služba odesílá zpět. Poskytuje bezproblémové prostředí pro testování služeb v kombinaci s hostitelem služby WCF.
Testovacího klienta WCF (WcfTestClient.exe) obvykle najdete v následujícím umístění: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE
– Komunita může být jedním z "Enterprise", "Professional" nebo "Community" v závislosti na tom, jakou úroveň sady Visual Studio je nainstalovaná.
Scénáře použití testovacího klienta
V následujících částech najdete nejčastější scénáře, ve kterých můžete pomocí testovacího klienta WCF zjednodušit proces vývoje.
Uvnitř sady Visual Studio
Hostitel služby WCF spustí testovacího klienta WCF s jednou službou.
Po vytvoření nového projektu služby WCF a stisknutím klávesy F5 spusťte ladicí program, hostitel služby WCF začne hostovat službu ve vašem projektu. Pak se otevře testovací klient WCF a zobrazí seznam koncových bodů služby definovaných v konfiguračním souboru. Parametry můžete otestovat a vyvolat službu a tento proces zopakovat, abyste mohli službu průběžně testovat a ověřovat.
Hostitel služby WCF spustí testovacího klienta WCF s více službami.
Pomocí testovacího klienta WCF můžete také ladit projekt služby, který obsahuje více služeb. Když se otevře testovací klient WCF, automaticky iteruje seznam služeb v projektu a otevře je pro testování.
Mimo Visual Studio
Můžete také vyvolat testovacího klienta WCF (WcfTestClient.exe) mimo Visual Studio a otestovat libovolnou službu na internetu. Pokud chcete nástroj najít, přejděte do následujícího umístění:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE
(kde může být komunita jedna z "Enterprise", "Professional" nebo "Community" v závislosti na tom, jakou úroveň sady Visual Studio je na počítači nainstalovaná)
Pokud chcete nástroj použít, poklikejte na název souboru a otevřete ho z tohoto umístění nebo ho spusťte z příkazového řádku.
Testovací klient WCF přebírá libovolný počet identifikátorů URI jako argumenty příkazového řádku. Jedná se o identifikátory URI služeb, které je možné testovat.
wcfTestClient.exe URI1 URI2 …
Po otevření okna testovacího klienta WCF klikněte na File-Add> Service a zadejte adresu koncového bodu služby, kterou chcete otevřít.
Uživatelské rozhraní klienta pro testování WCF
Testovacího klienta WCF můžete použít s jednou službou nebo více službami.
Operace služby
V levém podokně hlavního okna testovacího klienta WCF jsou uvedeny všechny dostupné služby spolu s příslušnými koncovými body a operacemi.
Když dvakrát kliknete na operaci, můžete jeho obsah zobrazit v pravém podokně na nové kartě s názvem operace.
V levém podokně jsou také uvedeny konfigurační soubory klienta. Poklikáním na některou z položek zobrazte obsah souboru v novém okně s kartami v pravém podokně.
Zadání parametrů testu
Pokud chcete zobrazit parametry testu, poklikejte na operaci a otevřete ji v pravém podokně. Parametry se ve výchozím nastavení zobrazují ve formátovém zobrazení a můžete zadat libovolné hodnoty parametrů pro otestování služby.
Pokud chcete zobrazit XML zprávy, klikněte na XML. Chcete-li je odeslat do služby, klepněte na tlačítko Vyvolat.
U parametru DataSet klikněte na tlačítko ... vedle možnosti Upravit... a upravte ho v novém okně se službou DataGrid. Všimněte si vzhledu tlačítek Kopírovat datovou sadu a Vložit datovou sadu . Pokud schéma objektu DataSet není při první úpravě neznámé, dataGrid je prázdný. Do aktuálního objektu v DataGridu musíte vložit objekt DataSet se stejným schématem. (Všimněte si, že před operací vložení potřebujete zkopírovat schéma někam jinam.) Objekt datové sady můžete také zkopírovat pro budoucí použití kliknutím na tlačítko Kopírovat datovou sadu.
Odpověď služby se zobrazí pod parametry testu.
Poznámka:
Pokud je očekávaná návratová hodnota řetězec, výsledek se zobrazí jako řetězec v uvozovkách, i když zadaný vstup nebyl v uvozovkách.
Pokud jste při vytváření kontraktu pro službu zadali konkrétní operaci jako jednosměrnou, nezobrazí se žádná odpověď na službu. Jakmile se zpráva zařadí do fronty pro doručení, zobrazí se dialogové okno s oznámením, že zpráva byla úspěšně odeslána.
Podpora relací
Zaškrtávací políčko Spustit nový proxy server na kartě operace služby umožňuje přepnout podporu relace. Toto pole je ve výchozím nastavení nezaškrtané.
Když zadáte testovací parametry pro konkrétní operaci (nebo jinou operaci ve stejném koncovém bodu služby) a zaškrtnete políčko Vyvolat vícekrát, tyto operace sdílejí jeden proxy server a stav služby se zachovají napříč několika operacemi.
Pokud je zaškrtnuté políčko Spustit nový proxy server, spustí se pro každý vyvolání nový proxy server, ukončí se předchozí scénář relace a stav služby se resetuje.
Úprava konfigurace klienta
V levém podokně hlavního okna testovacího klienta WCF jsou uvedeny konfigurační soubory klienta. Poklikáním na některou z položek zobrazte obsah souboru v pravém podokně.
Úpravy pomocí editoru konfigurace služby
V levém podokně klikněte pravým tlačítkem na Konfigurační soubor a vyberte místní nabídku Upravit pomocí SvcConfigEditoru. Editor konfigurace služby se spustí s obsahem konfigurace klienta. Konfiguraci můžete upravit a uložit v nástroji.
Po uložení souboru v Editoru konfigurace služby zobrazí testovací klient WCF zprávu s upozorněním, že soubor byl změněn mimo něj, a zeptá se, jestli chcete soubor znovu načíst.
Pokud vyberete Ano, konfigurační obsah na kartě "Client.dll.config" odráží změny, které jste provedli v editoru.
Pokud vyberete možnost Ne, konfigurační obsah na kartě "Client.dll.config" zůstane beze změny a upravený obsah se automaticky uloží do zdrojového souboru.
Obnovení do výchozí konfigurace
Pokud chcete zrušit všechny změny a obnovit výchozí konfiguraci klienta, klikněte pravým tlačítkem na konfigurační soubor v levém podokně a vyberte místní nabídku Obnovit výchozí konfiguraci. Výchozí hodnota konfigurace se načte a obnoví se obsah na kartě Client.dll.config.
Ověření změn
Při načítání uložených změn v testovacím klientovi WCF se zkontroluje platnost konfigurace vůči schématu WCF. Pokud jsou nalezeny chyby, zobrazí se dialogové okno s podrobnostmi o chybě.
Během generování proxy serveru, binární kompilace nebo vyvolání služby jsou zakázané položky nabídky, které podporují úpravy (tj. Upravit ..., Obnovit atd.). Vyvolání služby je také zakázáno při načítání aktualizované konfigurace do testovacího klienta WCF.
Zachování konfigurace klienta
Karta Tools-Options-Client>> Configuration (Konfigurace klienta) obsahuje možnost Vždy znovu vygenerovat konfiguraci při spouštění služeb, která je ve výchozím nastavení povolená. Tato možnost určuje, že při každém načtení služby testovacího klienta WCF znovu vygeneruje konfigurační soubor na základě nejnovějších kontraktů služeb a souborů App.config služby.
Pokud jste upravili konfiguraci klienta pro službu WCF a chcete vždy použít tento aktualizovaný soubor k ladění služby, můžete zrušit zaškrtnutí políčka Znovu vygenerovat . Když tak učiníte, i když službu aktualizujete a znovu otevřete testovacího klienta WCF, soubor Client.dll.config je soubor, který jste aktualizovali dříve, a ne znovu vygenerovaný na základě aktualizované služby.
Možná ale budete muset upravit konfigurační soubor, aby byl konzistentní s znovu vygenerovaným proxy serverem. Pokud se znovu vygenerovaný proxy a konfigurační soubor neshodují kvůli aktualizované službě, při vyvolání služby dojde k chybám.
Upozornění
Pokud jste změnili konfigurační soubor klienta a v budoucnu ho znovu použili, najdete ho v následujícím umístění:
\Documents and Nastavení\[User Account]\My Documents\Test Client Projects.
Všechny aktualizované informace o přihlašovacích údajích uložené v konfiguračním souboru klienta jsou chráněné seznamem řízení přístupu (ACL) této složky.
Přidávání, odebírání a aktualizace služeb
Přidat službu
Chcete-li> přidat službu do testovacího klienta WCF, klikněte na možnost Přidat službu. Pak budete muset zadat identifikátor URI (adresa koncového bodu) služby, který se má přidat. Adresa služby může být adresa mex nebo adresa WSDL.
Seznam posledních 10 koncových bodů služeb najdete také v podnabídce Poslední služby . Pokud vyberete jednu z nich, zadaná služba se přidá do testovacího klienta WCF.
Můžete také kliknout pravým tlačítkem na kořen stromu služeb Moje projekty služeb a vybrat Přidat službu , abyste dosáhli stejného výsledku.
Během generování proxy serveru, binární kompilace nebo vyvolání služby jsou položky nabídky, které podporují přidání služby, zakázány. Vyvolání služby je také zakázáno.
Odebrat službu
Klikněte pravým tlačítkem na kořen služby služby, která se má odebrat, a vyberte Odebrat službu a odeberte službu z klienta WCF Test Client.
Během generování proxy serveru, binární kompilace nebo vyvolání služby jsou zakázané položky nabídky, které podporují odebrání služby. Vyvolání služby je také zakázáno.
Aktualizovat službu
Pokud je ve službě provedena změna, když je spuštěný testovací klient WCF a chcete zajistit, aby implementace testovacího klienta WCF pro tuto službu byla aktuální, klikněte pravým tlačítkem myši na kořen služby služby a vyberte Aktualizovat službu. Všimněte si, že po aktualizaci se stav služby resetuje.
Během generování proxy serveru, binární kompilace nebo vyvolání služby jsou položky nabídky, které podporují aktualizaci služby, zakázané. Vyvolání služby je také zakázáno.
Umístění souborů vygenerovaných testovacím klientem
Ve výchozím nastavení ukládá testovací klient WCF vygenerovaný kód klienta a konfigurační soubory do složky %appdata%\Local\temp\Test Client Projects. Tato složka se odstraní po ukončení testovacího klienta WCF. Pokud se konfigurační soubor změní v testovacím klientovi WCF a možnost Vždy znovu vygenerovat konfiguraci při spouštění služeb je zakázaná, upravený soubor se zkopíruje do složky CachedConfig v části Dokumenty\Testovací klientské projekty s mapováním (soubor XML s názvem metadata-adresa-soubor-název_souboru) jako index.
Můžete také spustit testovacího klienta WCF na příkazovém řádku, pomocí /ProjectPath
přepínače určit novou požadovanou cestu pro ukládání vygenerovaných souborů nebo pomocí /RestoreProjectPath
přepínače obnovit výchozí umístění. Syntaxe je následující:
wcfTestClient.exe /ProjectPath [desired location]
Spuštěním tohoto příkazu se neotevře testovací klient WCF. Změní se pouze umístění složky. Tento příkaz můžete spustit bez ohledu na to, jestli je spuštěný testovací klient WCF nebo ne. Nové umístění se použije při restartování testovacího klienta WCF. Informace o umístění lze uložit v registru nebo v souboru WcfTestClient.exe.option ve složce %appdata%\Local\temp\Test Client Projects.
Funkce podporované testovacím klientem WCF
Následuje seznam funkcí podporovaných testovacím klientem WCF:
Vyvolání služby: Žádost/odpověď a jednosměrná zpráva
Vazby: všechny vazby podporované Svcutil.exe.
Řízení relace.
Smlouva se zprávou
Serializace XML
Následuje seznam funkcí, které testovací klient WCF nepodporuje:
Typy: Stream, , XmlElementMessage, XmlAttribute, XmlNodetypy, které implementují IXmlSerializable rozhraní, včetně souvisejícího XmlSchemaProviderAttribute atributuXDocument, a typy a XElement typ ADO.NETDataTable.
Duplexní kontrakt.
Transakce.
Zabezpečení: CardSpace, certifikát a uživatelské jméno/heslo.
Vazby: WSFederationbinding, všechny kontextové vazby a vazby Https, WebHttpbinding (podpora zpráv odpovědi JSON).
Zavření testovacího klienta WCF
Testovacího klienta WCF můžete zavřít následujícími způsoby:
V nabídce Soubor klepněte na tlačítko Ukončit. Případně v hlavním okně testovacího klienta WCF klepněte na tlačítko Zavřít. Obě tyto akce také vypínají automatického hostitele služby WCF a zastaví proces ladění sady Visual Studio, pokud visual Studio spustil testovacího klienta WCF.
Klepněte pravým tlačítkem myši na ikonu hostitele služby WCF v oznamovací oblasti a klepněte na tlačítko Ukončit. Tím se vypne automatický hostitel služby WCF i testovací klient WCF a zastaví se proces ladění sady Visual Studio.