Enregistrement d'un test de service à l'aide d'un proxy HTTP

Vous pouvez enregistrer des tests pour des services basés SOAP ou des services XML en exécutant un programme client via un proxy HTTP dédié. Pour enregistrer le test, le proxy intercepte les appels de service et les retours de message entre le client et le service. Cette interception peut engendrer des problèmes d'authentification, puisque le client communique avec le proxy effectuant l'enregistrement au lieu de communiquer avec le serveur effectif.

Avant de commencer

Vérifiez que Rational Agent Controller est en opération sur l'ordinateur local.

Si votre espace de travail ne contient pas déjà un projet de test, l'assistant d'enregistrement de test en crée un. Si vous voulez générer un test dans un projet spécifique, vérifiez que ce projet est disponible avant l'enregistrement.

Si vous testez un service Web basé SOAP, vérifiez que vous avez accès à un fichier WSDL (Web Services Description Language) valide. L'assistant peut importer des fichiers WSDL depuis l'espace de travail, le système de fichiers, un référentiel éloigné ou une URL. Vérifiez que les fichiers WSDL utilisent la syntaxe correcte pour l'environnement de test. Le client de service générique peut ne pas fonctionner avec certains fichiers WSDL.

Si vous utilisez le protocole SSL (Secure Sockets Layer) pour authentifier les communications avec le serveur, vous devez configurer le client afin qu'il accepte le certificat généré par le proxy qui effectue l'enregistrement au lieu du certificat du serveur effectif.

Si vous utilisez la sécurité SOAP ou des fichiers joints, vérifiez que vous avez configuré l'environnement avec les bibliothèques et les fichiers de configuration corrects.Pour plus de détails, voir Configuration de l'environnement pour la sécurité SOAP.

Par défaut, le proxy d'enregistrement utilise le port 1080. Vous pouvez changer le numéro du port dans l'assistant si ce port est déjà utilisé ou si un pare-feu ou un proxy l'utilise déjà.

A propos de cette tâche

Pour enregistrer un test, effectuez les opérations ci-dessous.

Procédure

  1. Dans la perspective Test, cliquez sur Fichier > Nouveau > Test à partir d'un enregistrement ou cliquez sur le bouton Nouveau test à partir d'un enregistrement.
  2. Sélectionnez Créer un test à partir d'un nouvel enregistrement et Enregistrement XML ou de service Web avec un client existant (proxy HTTP), puis cliquez sur Suivant.
  3. Sélectionnez un projet puis dans Nom du fichier de test, entrez un nom pour le test. Le nom que vous entrez est le nom de base de l'enregistrement, du test et d'autres fichiers requis. Ces fichiers sont visibles depuis le Navigateur de test ou l'Explorateur de packages Java avec leurs suffixes distinctifs, mais seul le nom simple (test) figure dans le navigateur de test.
  4. Cliquez sur Suivant.
  5. Indiquez des fichiers WSDL ou XSD (XML Schema Definition) pouvant être utilisés pour créer le contenu du test :
    1. Si vous enregistrez un service Web basé SOAP, cliquez sur Ajouter pour sélectionner ou importer les fichiers WSDL des services Web à tester. Si vous testez un service XML complet via HTTP, sans SOAP, aucun fichier WSDL n'est requis.
    2. Si des fichiers XSD sont disponibles, cliquez sur Ajouter pour sélectionner ou importer ces fichiers définissant le contenu XML des services à tester.
  6. Cliquez sur Suivant.
  7. Indiquez le port utilisé par le service et la valeur de délai d'expiration en secondes. Le programme d'enregistrement utilise son propre proxy pour enregistrer des retours et des appels de message. Toutefois, si vous utilisez déjà un proxy tel qu'un pare-feu d'entreprise pour accéder au service ou si vous devez transformer des messages entrants ou sortants avec du code personnalisé, cliquez sur Paramètres du proxy et effectuez les opérations suivantes :
    1. Pour un proxy HTTP existant, entrez l'adresse IP ou le nom d'hôte dans Proxy HTTP et entrez une valeur dans Port. Si certains hôtes ne doivent pas utiliser le proxy, entrez les noms des hôtes concernés dans Pas de proxy HTTP pour. Séparez les noms d'hôte par des virgules.
    2. Pour un proxy HTTPS existant, entrez l'adresse IP ou le nom d'hôte dans Proxy HTTPS et entrez une valeur dans Port. Si certains hôtes ne doivent pas utiliser le proxy, entrez les noms des hôtes concernés dans Pas de proxy HTTPS pour. Séparez les noms d'hôte par des virgules.
    3. Si vous devez transformer des messages entrants ou sortants à l'aide d'un code Java personnalisé, cliquez sur Parcourir pour désigner une classe Java dans votre espace de travail. Cette option est destinée à des cas particuliers dans lesquels des messages doivent être transformés ou compressés à l'aide d'une méthode de traitement pouvant être définie dans une classe Java.
  8. Cliquez sur Suivant.
  9. Si vous n'avez pas accès au fichier de clés de certificats serveur, vous pouvez indiquer au proxy de l'enregistreur de fournir son propre certificat. Pour ce faire, sélectionnez Authentifier avec un certificat proxy. Le proxy de l'enregistreur tente alors de s'identifier avec son propre certificat ; vous devez donc configurer l'application client afin qu'elle se fie à ce certificat en utilisant l'une des méthodes suivantes.
    Conseil : Si vous n'utilisez pas SSL, sélectionnez Authentifier avec un certificat proxy et ignorez cette page.
    • Si l'application client utilise un fichier de clés, vous devez indiquer comment le proxy de l'enregistreur doit s'authentifier auprès de l'application client : sélectionnez Ajouter le certificat proxy au fichier de clés certifiées, cliquez sur Parcourir pour spécifier le fichier de clés certifiées et entrez son mot de passe.
    • En l'absence d'un fichier de clés certifiées, utilisez les préférences, les commandes ou les options proposées par l'application client pour spécifier un serveur accrédité.
  10. Si vous avez accès au fichier de clés de certificats serveur, si le service requiert une double authentification ou s'il comporte plusieurs noeuds finaux requérant chacun sa propre configuration SSL, désélectionnez la case à cocher Authentifier avec un certificat proxy et utilisez le tableau pour associer une configuration SSL à chaque nom d'hôte et port de noeud final :
    1. Pour chaque nom d'hôte et port de noeud final, sélectionnez une configuration SSL existante et cliquez sur Editer la configuration ou cliquez sur Nouvelle configuration pour créer une configuration SSL. La fenêtre Propriétés SSL s'affiche.
    2. Pour la configuration SSL actuelle, sélectionnez ou désélectionnez la case à cocher Authentifier avec un certificat serveur comme décrit dans l'étape 9.
    3. Si vous désirez que le serveur authentifie le client, sélectionnez Utiliser un certificat client, cliquez sur Parcourir pour naviguer jusqu'au fichier de clés certifiées client, et si ce fichier est chiffré, entrez le mot de passe requis.
    4. Cliquez sur OK.
  11. Cliquez sur Suivant. S'il s'agit de la première fois que vous enregistrez un test de service Web, lisez l'avertissement de confidentialité et sélectionnez J'accepte, puis cliquez sur Terminer pour poursuivre.
  12. Exécutez manuellement l'application client et utilisez-la pour envoyer des appels de service et pour recevoir des retours de messages du service. Tous les appels de service et les retours de message qui transitent par le proxy de l'enregistreur sont enregistrés.
  13. Au terme de l'enregistrement des appels de service et des retours de messages à tester, cliquez sur Arrêtericône arrêter depuis la vue Contrôle de l'enregistreur. Une fenêtre de progression s'ouvre lors de la génération du test.

Retour d'informations