Partager via


Client de test WCF (WcfTestClient.exe)

Windows Communication Foundation (WCF) Test Client (WcfTestClient.exe) est un outil gui qui permet aux utilisateurs d’entrer des paramètres de test, d’envoyer cette entrée au service et d’afficher la réponse que le service renvoie. Il offre une expérience de test de service transparente lorsqu’elle est combinée à l’hôte de service WCF.

Vous pouvez généralement trouver le client de test WCF (WcfTestClient.exe) à l’emplacement suivant : C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE - La communauté peut être l’une des options « Entreprise », « Professionnel » ou « Communauté » en fonction du niveau d’installation de Visual Studio.

Scénarios d’utilisation du client de test

Les sections suivantes décrivent les scénarios les plus courants dans lesquels vous pouvez utiliser le client de test WCF pour simplifier votre processus de développement.

À l’intérieur de Visual Studio

L’hôte de service WCF démarre le client de test WCF avec un seul service

Après avoir créé un projet de service WCF et appuyé sur F5 pour démarrer le débogueur, l’hôte de service WCF commence à héberger le service dans votre projet. Ensuite, le client de test WCF s’ouvre et affiche une liste de points de terminaison de service définis dans le fichier de configuration. Vous pouvez tester les paramètres et appeler le service, et répéter ce processus pour tester et valider en continu votre service.

L’hôte de service WCF démarre le client de test WCF avec plusieurs services

Vous pouvez également utiliser le client de test WCF pour aider à déboguer un projet de service qui contient plusieurs services. Lorsque le client de test WCF s’ouvre, il itère automatiquement la liste des services dans votre projet et les ouvre à des fins de test.

En dehors de Visual Studio

Vous pouvez également appeler le client de test WCF (WcfTestClient.exe) en dehors de Visual Studio pour tester un service arbitraire sur Internet. Pour localiser l’outil, accédez à l’emplacement suivant :

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE (où "community" peut être l'une des options « Entreprise », « Professionnel » ou « Communauté » selon le niveau de Visual Studio installé sur l'ordinateur)

Pour utiliser l’outil, double-cliquez sur le nom du fichier pour l’ouvrir à partir de cet emplacement ou la lancer à partir d’une ligne de commande.

Le client de test WCF accepte un nombre arbitraire d’URI en tant qu’arguments de ligne de commande. Il s’agit des URI des services qui peuvent être testés.

wcfTestClient.exe URI1 URI2 …

Une fois la fenêtre du client de test WCF ouverte, cliquez sur Fichier-Ajouter> un service, puis entrez l’adresse du point de terminaison du service que vous souhaitez ouvrir.

Interface utilisateur du client de test WCF

Vous pouvez utiliser le client de test WCF avec un seul service ou plusieurs services.

Opérations de service

Le volet gauche de la fenêtre principale du client de test WCF répertorie tous les services disponibles, ainsi que leurs points de terminaison et opérations respectifs.

Lorsque vous double-cliquez sur une opération, vous pouvez afficher son contenu dans le volet droit dans un nouvel onglet avec le nom de l’opération.

Le volet gauche répertorie également les fichiers de configuration du client. Double-cliquez sur l’un des éléments pour afficher le contenu du fichier dans une nouvelle fenêtre à onglets dans le volet droit.

Entrée des paramètres de test

Pour afficher les paramètres de test, double-cliquez sur une opération pour l’ouvrir dans le volet droit. Les paramètres sont affichés en mode Mis en forme par défaut et vous pouvez entrer des valeurs arbitraires pour les paramètres afin de tester le service.

Pour afficher le code XML du message, cliquez sur XML. Pour les envoyer au service, cliquez sur Appeler.

Pour un paramètre DataSet, cliquez sur le bouton ... en regard de Modifier... pour le modifier dans une nouvelle fenêtre affichant DataGrid. Notez l’apparence des boutons Copy DataSet et Paste DataSet . Si le schéma de l’objet DataSet est inconnu lors de la première modification, DataGrid est vide. Vous devez coller un objet DataSet avec le même schéma dans l’objet actuel dans DataGrid. (Notez que vous devez copier le schéma à partir d’un autre emplacement avant l’opération de collage.) Vous pouvez également copier un objet Dataset pour une utilisation ultérieure en cliquant sur le bouton Copier le jeu de données .

La réponse du service apparaît au-dessous des paramètres de test.

Remarque

Si la valeur de retour attendue est une chaîne, le résultat s’affiche sous forme de chaîne entre guillemets, même si l’entrée fournie n’a pas été entre guillemets.

Si vous avez spécifié une opération particulière en tant qu’opération unidirectionnelle lorsque vous avez créé le contrat pour le service, aucune réponse de service n’est affichée. Dès que le message est mis en file d’attente pour remise, une boîte de dialogue s’affiche pour vous avertir que le message a été envoyé avec succès.

Prise en charge des sessions

La case à cocher Démarrer un nouveau proxy dans l’onglet d’une opération de service vous permet de désactiver la prise en charge de la session. Cette zone est désactivée par défaut.

Lorsque vous entrez des paramètres de test pour une opération spécifique (ou une autre opération dans le même point de terminaison de service), puis cliquez sur Appeler plusieurs fois avec la case à cocher désactivée, ces opérations partagent un proxy et l’état du service est conservé sur plusieurs opérations.

Si la case à cocher Démarrer un nouveau proxy est cochée, un nouveau proxy est démarré pour chaque appel, le scénario de session précédent est terminé et l’état du service est réinitialisé.

Modification de la configuration du client

Le volet gauche de la fenêtre principale du client de test WCF répertorie les fichiers de configuration du client. Double-cliquez sur l’un des éléments pour afficher le contenu du fichier dans le volet droit.

Modifier avec l’éditeur de configuration de service

Cliquez avec le bouton droit sur Fichier de configuration dans le volet gauche et sélectionnez le menu contextuel Modifier avec SvcConfigEditor. L’Éditeur de configuration de service est lancé avec le contenu de configuration du client. Vous pouvez modifier la configuration et l’enregistrer dans l’outil.

Après avoir enregistré le fichier dans l’Éditeur de configuration de service, le client de test WCF affiche un message d’avertissement pour vous informer que le fichier a été modifié en dehors et vous demande si vous souhaitez le recharger.

Si vous sélectionnez Oui, le contenu de configuration de l’onglet «Client.dll.config» reflète les modifications que vous avez apportées dans l’éditeur.

Si vous sélectionnez Non, le contenu de configuration de l’onglet «Client.dll.config» reste inchangé et le contenu modifié est automatiquement enregistré dans le fichier source.

Restaurer vers la configuration par défaut

Si vous souhaitez annuler toutes les modifications et restaurer dans la configuration du client par défaut, cliquez avec le bouton droit sur Fichier de configuration dans le volet gauche et sélectionnez le menu contextuel Restaurer la configuration par défaut. La valeur de configuration par défaut est chargée et le contenu de l’onglet «Client.dll.config» est restauré.

Valider les modifications

Lorsque les modifications enregistrées sont chargées dans le client de test WCF, la configuration est vérifiée pour la validité du schéma WCF. Si des erreurs sont détectées, une boîte de dialogue s’affiche pour afficher les détails de l’erreur.

Pendant la génération du proxy, la compilation binaire ou l’appel de service, les éléments de menu qui prennent en charge la modification (autrement dit, « Modifier ... », « Restaurer ... », etc.) sont désactivés. L’appel de service est également désactivé lors du chargement de la configuration mise à jour vers le client de test WCF.

Conserver la configuration du client

L'onglet Outils->Options->Configuration du Client contient une option Toujours régénérer la configuration lors du lancement des services, qui est activée par défaut. Cette option spécifie que chaque fois que le client de test WCF charge un service, il régénère un fichier de configuration basé sur les derniers fichiers de contrat de service et de service App.config.

Si vous avez modifié la configuration du client pour votre service WCF et que vous souhaitez toujours utiliser ce fichier mis à jour pour déboguer votre service, vous pouvez décocher l’option Régénérer . Ainsi, même lorsque vous mettez à jour le service et rouvrez le client de test WCF, le fichier Client.dll.config est celui que vous avez modifié précédemment, au lieu d'un fichier régénéré basé sur le service mis à jour.

Toutefois, vous devrez peut-être modifier le fichier de configuration pour qu’il soit cohérent avec le proxy régénéré. Si le proxy régénéré et le fichier de configuration sont incompatibles en raison d’un service mis à jour, les erreurs se produisent lorsque le service est appelé.

Avertissement

Si vous avez modifié le fichier de configuration du client et que vous sélectionnez pour le réutiliser ultérieurement, vous pouvez trouver le fichier à l’emplacement suivant :

\Documents et paramètres\[Compte d’utilisateur]\Mes documents\Projets clients de test.

Toutes les informations d’identification mises à jour stockées dans le fichier de configuration du client sont protégées par la liste de contrôle d’accès (ACL) de ce dossier.

Ajout, suppression et actualisation des services

Ajouter un service

Cliquez sur Fichier-Ajouter> un service pour ajouter un service au client de test WCF. Vous devez ensuite taper l’URI (adresse de point de terminaison) du service à ajouter. L’adresse du service peut être une adresse mex ou une adresse WSDL.

Vous trouverez également une liste de 10 points de terminaison de services récemment ajoutés dans le sous-menu Services récents . Si vous sélectionnez l’un d’eux, le service spécifié est ajouté au client de test WCF.

Vous pouvez également cliquer avec le bouton droit sur la racine de l’arborescence de services Mes projets de service, puis sélectionner Ajouter un service pour obtenir le même résultat.

Pendant la génération de proxy, la compilation binaire ou l’appel de service, les éléments de menu qui prennent en charge l’ajout d’un service sont désactivés. L'appel de service est également désactivé.

Supprimer le service

Cliquez avec le bouton droit sur la racine du service à supprimer, puis sélectionnez Supprimer le service pour supprimer un service du client de test WCF.

Pendant la génération du proxy, la compilation binaire ou l’appel de service, les éléments de menu qui prennent en charge la suppression d’un service sont désactivés. L'appel de service est également désactivé.

Actualiser le service

Si une modification est apportée au service pendant l’exécution du client de test WCF et que vous souhaitez vous assurer que l’implémentation du client de test WCF pour ce service est up-to-date, cliquez avec le bouton droit sur la racine du service, puis sélectionnez Actualiser le service. Notez qu’après l’actualisation, l’état du service est réinitialisé.

Pendant la génération du proxy, la compilation binaire ou l’appel de service, les éléments de menu qui prennent en charge l’actualisation d’un service sont désactivés. L'appel de service est également désactivé.

Emplacement des fichiers générés par le client de test

Par défaut, le client de test WCF stocke le code client généré et les fichiers de configuration dans le dossier «%appdata%\Local\temp\Test Client Projects ». Ce dossier est supprimé après la fermeture du client de test WCF. Si un fichier de configuration est modifié dans le client de test WCF et que l’option Always Régénérer la configuration lors du lancement des services est désactivée, le fichier modifié est copié dans le dossier « CachedConfig » sous « Mes documents\projets clients de test » avec un fichier XML de mappage (nom-adresse-à-fichier) de mappage en tant qu’index.

Vous pouvez également démarrer le client de test WCF dans une ligne de commande, utiliser le /ProjectPath commutateur pour spécifier un nouveau chemin souhaité pour stocker des fichiers générés ou utiliser le commutateur pour restaurer l’emplacement /RestoreProjectPath par défaut. La syntaxe est la suivante :

wcfTestClient.exe /ProjectPath [desired location]

L’exécution de cette commande n’ouvre pas le client de test WCF. Seul l’emplacement du dossier est modifié. Vous pouvez exécuter cette commande si le client de test WCF est en cours d’exécution ou non. Le nouvel emplacement est appliqué lorsque le client de test WCF est redémarré. Les informations d’emplacement peuvent être enregistrées dans le Registre ou dans le fichier WcfTestClient.exe.option dans le dossier «%appdata%\Local\temp\Test Client Projects ».

Fonctionnalités prises en charge par le client de test WCF

Voici une liste des fonctionnalités prises en charge par le client de test WCF :

  • Appel de service : requête/réponse et message unidirectionnel.

  • Liaisons : toutes les liaisons prises en charge par Svcutil.exe.

  • Contrôle de session.

  • Contrat de message.

  • Sérialisation XML.

Voici une liste des fonctionnalités non prises en charge par le client de test WCF :

Fermeture du client de test WCF

Vous pouvez fermer le client de test WCF de la manière suivante :

  • Dans le menu Fichier , cliquez sur Quitter. Vous pouvez également cliquer sur Fermer dans la fenêtre principale du client de test WCF. Ces deux actions arrêtent également l’hôte automatique du service WCF et arrêtent le processus de débogage Visual Studio si le client de test WCF a été lancé par Visual Studio.

  • Cliquez avec le bouton droit sur l’icône Hôte du service WCF dans la zone de notification, puis cliquez sur Quitter. Cela arrête l’hôte automatique du service WCF et le client de test WCF et arrête le processus de débogage de Visual Studio.

Voir aussi