La bibliothèque

La bibliothèque contient toutes les pages web utilisées pour construire les utilisateurs virtuels. Les paramètres de la page web comme la définition de la requête ou les assertions de contenu sont réglables dans la bibliothèque. Lorsqu'un enregistrement est en cours, toutes les pages enregistrées sont créées dans un conteneur dans la bibliothèque. Reportez vous à la section intitulée « Enregistrer un scénario » pour plus d'information.

Les serveurs

Le panneau des serveurs permet de déclarer et modifier les serveurs web utilisés par le scénario. Les serveurs sont automatiquement créés à l'enregistrement du scénario. Les paramètres du serveur sont centralisés ce qui permet de changer rapidement le serveur cible du test. Par exemple, cela permet de changer rapidement du serveur de développement vers le serveur de pré-production.

  • Définition du serveur HTTP. Paramétrage du serveur.

  • Authentification. Permet de spécifier les comptes utilisateurs utilisés pour l'authentification au serveur. Les zones protégées (royaumes ou domaines) sont détectés à l'enregistrement et automatiquement ajoutées. Les comptes d'identification peuvent être dynamiques et changés pour chaque utilisateur simulé grâce aux variables.

    Voir la section intitulée « Authentification » pour plus de détails sur l'authentification dans NeoLoad.

  • HTTP URL rewriting. Le suivi de session utilisateur est automatiquement gérées lorsque les cookies sont utilisés. Dans le cas de serveurs utilisant l'URL rewriting pour suivre la session utilisateur, l'argument de session doit être défini (ex: SESSIONID or JSESSIONID pour la plupart des serveurs). L'argument est automatiquement rempli lorsqu'il est détecté à l'enregistrement.

Authentification

Méthodes d'authentifications supportées

NeoLoad supporte les schémas d'authentification suivant: Basic, Digest, NTLM et Negotiate.

A propos de Negotiate, SPNEGO et kerberos

Le protocole SPNEGO gère le schéma Negotiate au sein d'une communication HTTP. Lorsqu'ils utilisent SPNEGO, le navigateur et le serveur négocient quel protocol sous-jacent utiliser: Kerberos ou NTLM. Bien que Kerberos soit le protocole par défaut, si le défaut échoue, SPNEGO essaie NTLM.

Noter que l' Authentification Windows Intégrée de Microsoft IIS utilise Kerberos v5 et NTLM.

Pour des raisons de performance, NeoLoad n'utilise pas SPNEGO comme protocol par défaut pour Negotiate, mais utilise NTLM. En effet, la combinaison SPNEGO+Kerberos a un impact majeur sur les performances des injecteurs de charge. Lorsque SPEGNO+Kerberos est utilisé, l'injecteur peut générer beaucoup moins d'utilisateur virtuels simultanés.

Activer l'utilisation de SPNEGO n'est pas recommandé. Si cela est absolument nécessaire, suivre la procédure:

Procédure 8.1. Activer SPNEGO

  1. Editer le fichier: <neoload>/conf/controller.properties.

  2. Changer la valeur de la clé: [Authentication]scheme.negotiate.subprotocol=spnego. (la valeur originale est ntlm)

  3. Editer le fichier <neoload>/conf/krb5.conf et déclarer le Key Distribution Center (KDC) pour chaque Realm et chaque domaine.

Ordre de priorité des schémas d'authentification

Certains serveurs gèrent plusieurs schémas d'authentification des utilisateurs. NeoLoad utilise l'ordre suivant par défaut: Negotiate, NTLM, Digest, Basic. Cela reflète l'ordre utilisé par les navigateurs web.

Dans certains cas, il peut être nécessaire de changer cet ordre:

Procédure 8.2. Modifier l'ordre de priorité des schémas

  1. Editer le fichier: <neoload>/conf/controller.properties.

  2. Editer la clé: [Authentication]scheme.priority.

Les pages web

Une page web représente une page telle qu'elle est affichée dans un navigateur. Elle est composée d'une page HTML et de sous composants comme des images ou des feuilles de style CSS.

  • Nom - Le nom de la page web dans NeoLoad.

  • URL - L'URL de la première requête HTTP qui compose la page est affichée ici pour information.

  • Description - Permet d'entrer facultativement une description de la page web.

  • Temps d'attente - Le temps d'attente est le temps de pause avant de jouer une page web, ce qui correspond au temps qu'il faut à un utilisateur réel pour lire une page reçue dans son navigateur avant de cliquer sur un lien. Réglez ici le temps d'attente pour cette page ou cliquez sur le raccourci vers le panneau de politique d'exécution pour régler le temps d'attente commun à toutes les pages. La politique par défaut est d'utiliser un temps d'attente commun à toutes les pages d'une durée de 3 secondes (utilisez le même raccourci pour changer la politique).

  • Copie d'écran de la page - La copie d'écran du contenu du navigateur au moment où la page a été enregistrée.

    Notez que cette fonctionnalité n'est disponible que sous Windows. Elle doit être utilisée comme une indication permettant de se rappeler ce qui était affiché dans le navigateur quand la page a été enregistrée. Seules les pages ayant un contenu html ont des copies d'écran. Si la copie d'écran ne reflète pas la page réelle, vous pouvez l'effacer.

    La prise de copie d'écran automatique à l'enregistrement peut être désactivée en changeant la valeur de la clé recorder.screenshot.enabled à false dans la rubrique GUI du fichier de configuration /conf/controller.properties.

  • Avancé - Paramètres avancés de la page.

    Rejeu des requêtes - Par défaut, NeoLoad rejoue les requêtes selon la norme HTTP: un navigateur peut utiliser plusieurs connexions en parallèle pour obtenir les ressources liées à une page.

    Pour certains besoins spécifiques, il est possible de forcer NeoLoad à rejouer les requêtes séquentiellement sur le serveur, dans l'ordre défini dans la bibliothèque.

Les requêtes HTTP

Une requête HTTP correspond à l'envoi d'une trame réseau HTTP et à la réception de sa réponse qui peut être une page HTML, une image ou un fichier type CSS par exemple.

Type de requête

Il existe trois manières de définir une requête:

  • Définition manuelle. une définition statique de la requête. Définir l'URL et les paramètres.

  • Redirection HTTP. signifie que la requête courante est la cible d'un ordre de redirection HTTP de la réponse à la requête précédente. Lorsqu'une requête est définie comme redirection HTTP, l'injecteur de charge n'utilisera pas l'URL enregistrée ni les paramètres pour jouer cette requête. Il va utiliser dynamiquement le résultat de la requête précédente (La requête précédente doit avoir une réponse de type "302 Moved Temporarily"). Cela est très utile dans le cas de pages qui font des redirections contenant des paramètres générés dynamiquement (par exemple: /searchresult.jsp?searchID=481825).

  • L'extracteur de Liens. Extrait et suit un lien vérifiant une définition dynamique. Il est aussi appelé extracteur de formulaire dans le cas de requêtes de type POST de formulaire. Cela doit être utilisé lorsqu'un scénario simule un clic sur un lien généré dynamiquement. L'injecteur de charge extrait dynamiquement le lien à partir des résultats de la requête précédente (référant) et suit ce lien. L'extraction est basée sur des expressions régulières (regexp).

    Un cas typique est celui où un ou plusieurs paramètres sont dynamiques. Utiliser le bouton "Rendre la valeur dynamique" pour créer la regexp par défaut.

    ".*" signifie n'importe quels caractères. Dans l'exemple précédent, le premier lien rencontré qui ressemble à /loadtest/search/index.jsp?searchID=<anyvalue> va vérifier l'expression régulière et sera extrait. Les expressions régulières permettent de réaliser des extractions avancées.

    Notez que tous les paramètres, ainsi que l'URL peuvent contenir des expressions régulières. En conséquence, les caractères réservés des expressions régulières doivent être échappés. Les caractères suivant doivent être échappés avec '\': [ ] ^ \ { } ( )

    Lors de l'extraction d'un lien ou d'un formulaire, il est possible de créer automatiquement des variables NeoLoad contenant la valeur des paramètres lors de l'exécution de ce lien. Ceci permet d'extraire la partie dynamique d'un lien puis de l'utiliser dans d'autres requêtes. Si par exemple votre application utilise souvent un même paramètre dynamique, vous pouvez définir un extracteur de lien lors de la première utilisation de ce paramètre, puis utiliser la variable dans toutes les autres requêtes utilisant ce paramètre. Cela permet de ne pas multiplier les recherche dans les pages de réponse du serveur et ainsi d'augmenter les performances des injecteurs de charge.

    Reportez vous à la documentation sur les extracteurs de liens et de formulaires pour plus d'information et pour des exemples.

    [Note]Note

    Ce choix est désactivé dans l'interface graphique si le référant n'est pas défini.

Paramètres de requête

Des paramètres peuvent être définis pour n'importe quel type de soumission de formulaires (POST, GET, HEAD, PUT...). Certains peuvent être fixés à des valeurs statiques et d'autres à des valeurs dynamiques en utilisant les variables. Lorsque les boites encoder sont cochées, les valeurs spécifiées seront converties selon le format MIME application/x-www-form-urlencoded avant d'être soumises (encoder espace par %20 par exemple). Décocher la boite si le nom ou la valeur sont déjà encodés.

Paramètres de POST

Quel que soit le type de POST, les requêtes de ce type peuvent avoir des paramètres dans l'URL. Pour traiter séparément les paramètres de POST et d'URL des onglets permettent de séparer les deux cas.

Dans l'exemple ci-dessus l'URL qui sera obtenue lors du test sera : https://jack:8443/loadtest/form/doit.jsp?firstname=john&lastname=smith&email=john.smith@company.com.

Contenu d'un POST de données binaires

Les requêtes POST avec un contenu de type "application/octet-stream" ou avec un charSet non standard sont traitées comme du contenu binaire par NeoLoad. Cela assure qu'aucun encodage d'URL ou de charSet ne sera fait sur le contenu avant d'être joué.

Contenu d'un POST de données textuelles

Les requêtes POST avec un contenu de type "text/...". Le contenu de cette requête peut contenir des variables NeoLoad pour générer du contenu dynamique.

Paramètres de POST multipart

Les requêtes POST avec un contenu de type "multipart/form-data" ont des paramètres réglables avec une interface spécifique.

Les parties (ou sections) sont définies par un nom et une valeur. Optionnellement, elles peuvent avoir un type de contenu spécifique, de même pour leur charSet ou le transfer encoding. Référez vous à la RFC1867 pour plus de détails. Chaque champ peut être remplacé par une variable. La valeur peut être une chaîne ou le contenu d'un fichier.

Champs spécifiques des sections fichier (File part)

Le champ nom de fichier représente le nom du fichier de la section. Les données du contenu de la section sont définies par le champ fichier source. Le fichier peut être défini avec un chemin absolu ou avec un chemin relatif au projet. Les fichiers sont automatiquement copiés sur tous les injecteurs de charge au lancement du test.

Paramètres avancés

Les paramètres avancés:

  • Entêtes de Requête. les entêtes de requête HTTP. Il est possible de modifier des entêtes existants, d'en ajouter de nouveaux ou d'en supprimer. Une variable peut être utilisée comme valeur d'entête.

  • Paramètres Avancés. 

    • Paramètre de requête. Spécifie si une requête envoyée doit contenir ou non un caractère égal après le nom du paramètre si sa valeur est vide (ex: il est possible de choisir une requête comme /page.jsp?myparam= ou plutôt comme /page.jsp?myparam).

    • Définition Avancée. Permet de configurer le référant de cette requête. Le référant est la requête contenant le lien vers la requête courante. Par défaut le référant est calculé durant la phase d'enregistrement. Vous pouvez changer le référant, en cliquant sur le bouton Changer le référant. Lors de la modification du référant, il faut s'assurer que l'appel de la requête courante est bien postérieur à l'appel du référant dans la définition des utilisateurs virtuels.

      Le référant est utilisé lorsqu'une requête est:

      • Un extracteur de lien ou de formulaire

        Dans ce cas, NeoLoad va chercher la définition du lien ou du formulaire dans la réponse de la requête référant.

      • Si la requête est une redirection

        Dans ce cas, NeoLoad va chercher la valeur du header Location dans la réponse de la requête référant.

    • Charset du formulaire. Indique le charset utilisé pour encoder les paramètres du formulaire (UTF-8, ISO-8859-1, ...). Par défaut, NeoLoad utilise un algorithme similaire à celui des navigateurs web pour savoir quel charset utiliser: NeoLoad utilise le charset de la page HTML contenant le formulaire. Si ce charset n'est pas trouvé, "iso-8859-1" est utilisé.

      Ne pas confondre ce charset qui est utilisé pour transformer les caractères en octets avec le simple URL Encodage des caractères, c'est à dire transformer par exemple le caractère espace en %20. Pour être plus précis, l' URL Encodage d'un caractère diffère selon le charset utilisé.

  • Extracteurs de Variable. Extrait une chaîne à partir de la réponse à cette requête, et l'assigne à une variable. Voir la section intitulée « L'extracteur de Variable »

  • Requête enregistrée. Affiche pour information la requête soumise au serveur lors de l'enregistrement.

  • Réponse enregistrée. Affiche pour information la réponse retournée par le serveur lors de l'enregistrement.

L'extracteur de Variable

Extrait une chaîne à partir de la réponse à cette requête, et l'assigne à une variable. Il existe deux modes d'utilisation de l'extracteur de variable: le mode Simple et le mode Avancé. Le mode simple vous aide à définir la chaîne à extraire, et le mode avancé vous permet de définir des extractions plus complexes en utilisant des expressions régulières.

  • Définition du mode Simple. Ce mode vous aidera à définir l'extracteur.

    • Nom de Variable. Le nom de la variable qui sera automatiquement créée et qui contiendra la valeur extraite.

    • Extraire depuis. Extraire la valeur depuis le corps de la réponse, depuis les entêtes de la réponse ou depuis le contenu d'une variable NeoLoad. Extraire une variable depuis le contenu d'une autre variable permet de faire une extraction en plusieurs étapes. Extraire en premier une partie de la réponse du serveur, puis utiliser une autre expression régulière pour en extraire une sous partie.

      [Note]Note

      Les extracteurs sont ordonnés et exécutés dans l'ordre de la définition. Vous pouvez reordonner les extracteurs en utilisant les flèches.

    • Commençant par. La phrase apparaissant dans la réponse juste avant la valeur à extraire.

    • Suivi de. La définition du corps principal de la chaîne. La chaîne extraite est la concaténation de toutes les parties sélectionnées pour l'extraction.

    • Terminant par. La phrase apparaissant dans la réponse juste après la valeur à extraire.

    • Occurrence à extraire de la page. Si la définition est vérifiée plus d'une fois, définir celle à utiliser. La valeur par défaut est 1 pour utiliser la première occurence mais vous pouvez choisir d'utiliser une occurrence choisie aléatoirement ou toutes les occurrences (utile dans les boucles, consultez Utiliser des occurrences multiple).

    Note: En changeant vers le mode avancé, la conversion de la définition Simple en définition Avancée est automatique.

  • Définition du mode Avancé. L'extraction est effectuée en utilisant une expression régulière sur la réponse du serveur.

    • Nom de la variable. Le nom de la variable qui sera automatiquement créée et qui contiendra la valeur extraite.

    • Extraire depuis. Extraire la valeur depuis le corps de la réponse, depuis les entêtes de la réponse ou depuis le contenu d'une variable NeoLoad. Extraire une variable depuis le contenu d'une autre variable permet de faire une extraction en plusieurs étapes. Extraire en premier une partie de la réponse du serveur, puis utiliser une autre expression régulière pour en extraire une sous partie.

      [Note]Note

      Les extracteurs sont ordonnés et exécutés dans l'ordre de la définition. Vous pouvez reordonner les extracteurs en utilisant les flèches.

    • Expression régulière à vérifier. L'expression régulière utilisée pour extraire la valeur. L'expression doit contenir des parenthèses autour des parties à extraire. (valide: valeur="(.+?)", invalide: valeur=".+?"). Veuillez vous reporter au Guide des Expressions Régulières pour obtenir de l'aide sur ce sujet.

    • Occurrence à extraire de la page. Si la définition est vérifiée plus d'une fois, définir celle à utiliser. La valeur par défaut est 1 pour utiliser la première occurence mais vous pouvez choisir d'utiliser une occurrence choisie aléatoirement ou toutes les occurrences (utile dans les boucles), consultez Utiliser des occurrences multiples.

    • Modèle de valeur. Le modèle utilisé pour construire la valeur. C'est une chaîne arbitraire avec des éléments spéciaux qui réfèrent aux groupes dans l'expression régulière (un groupe est une partie dynamique de l'expression régulière, entre parenthèses): $0$ réfère au texte entier vérifiant l'expression, $1$ réfère au groupe 1, $2$ réfère au groupe 2, etc. Utiliser un identifiant de groupe illégal causera une erreur de type <NL-Illegal-groupIndex> pendant le test. Cela arrive typiquement lorsque aucune parenthèse ne sont définies dans l'expression régulière à vérifier.

    Note: En changeant vers le mode simple, la conversion de la définition Avancée en définition Simple étant impossible, la dernière définition Simple est utilisée.

    Exemples

    • Extraire du corps de la réponse. En considérant le contenu suivant: Votre numéro de commande M. John est:12345; et que la chaîne à extraire est '12345' qui doit être utilisée dans une requête suivante.

      Définir un extracteur de variable ainsi:

      Nom de la variable: 'MaVariable'
      Extraire depuis: 'Corps du message'
      Expression régulière à vérifier: 'Votre numéro de commande(.+)? est:([0-9]+);'
      Numéro d'occurrence dans la page: '1'
      Modèle de valeur: '$2$' puisqu'il faut extraire le numéro de commande et non pas le nom de la personne. Utiliser $1$ pour obtenir le nom. ($0$ ramènerait tout le texte vérifié: 'Votre numéro de commande M. John est:12345;')
      Valeur par défaut: '-1' par exemple.
      

    • Extraire depuis l'entête de la réponse: 

      Extraire depuis: 'Entête'
      Expression régulière à vérifier: 'MonEntête: (.*)'
      Numéro d'occurrence dans la page: '1'
      Modèle de valeur:'$1$'
      

  • Test. Ce panneau permet de tester l'extracteur de variable. Entrer le texte correspondant à la réponse du serveur dans la zone de texte. La valeur du champ "valeur extraite de cette page" contient la valeur qui sera extraite de cette page.

  • Erreur. Ce panneau permet de définir la valeur par défaut à utiliser lorsque la définition n'est pas vérifiée dans la réponse du serveur. Par défaut, une assertion échoue lorsque la définition n'est pas vérifiée, ce qui permet de traiter cette requête comme une erreur dans les résultats de test.

  • Utiliser les occurrences multiples. Lorsque le numéro d'occurrence est négatif, toutes les occurrences vérifiées sont traitées. Les variables suivantes sont automatiquement créées:

    • <nomDeVariable>_matchNr - le nombre d'occurrences trouvées; peut être 0.

    • <nomDeVariable>_n, où n = 1,2,3 etc - les chaînes générées suivant le modèle de valeur.

    • <nomDeVariable>_n_gm, où m=0,1,2 - les groupes vérifiant n

    • <nomDeVariable> - toujours fixée à la valeur par défaut

  • Contenu de réponse. Le contenu de la réponse du serveur. Seul le contenu text (text/html,text/xml,...) est disponible.

Validation

Permet d'ajouter des assertions sur les réponses. Le contenu retourné par le serveur peut être traité comme une erreur suivant les critères suivants: la durée, la taille de la page ou le contenu de la page.

Durée

Spécifie la durée maximum tolérée en ms.

Taille de la réponse

Définir les longueurs minimum et maximum du contenu du corps de la réponse. La longueur des entêtes HTTP n'est pas prise en compte. La longueur par défaut est celle du contenu de la réponse lors de l'enregistrement. "Plus grand que" signifie plus grand que ou égal, et "Plus petit que" signifie plus petit que ou égal.

Contenu de la réponse

Cela permet de vérifier que la réponse contienne ou ne contienne pas un certain contenu. La réponse est composée des entêtes et du contenu de la réponse HTTP. La réponse est considérée comme valide si toutes les conditions de contenu sont satisfaites.

Les types de condition disponibles sont:

  • contient: vérifie si le corps de la réponse contient le texte défini. (Exemple: "<span class="welcome">Bienvenue</span>")

  • contient l'expression régulière: vérifie si le corps de la réponse contient l'expression régulière définie. (Exemple: "<span class="welcome">Bienvenue \w+ \w+ </span>")

    Notez que l'assertion de contenu peut utiliser des variables.

    Veuillez vous reporter au Guide des Expressions Régulières pour obtenir de l'aide sur les expressions régulières.

Signaler les requêtes particulières

Pour retrouver facilement et rapidement vos requêtes personnalisées, NeoLoad peut afficher un signe sur l'icône de l'action dans l'arbre.

Les requêtes personnalisées sont celles qui utilisent une validation de réponse, un extracteur de variable, un extracteur de lien/formulaire. De même, il est possible de signaler toutes les requêtes de type formulaire POST, toutes celles utilisant des paramètres ou celles contenant un texte spécifique.

Lors de la recherche de texte dans la definition de la requête, NeoLoad inspecte le chemin, les paramètres, les entêtes, les noms des Extracteurs de variables ainsi que les validations de contenu.

Procédure 8.3. Pour configurer la politique de signalisation des requêtes

  1. Cliquer sur le noeud "bibliothèque" dans l'arbre.

  2. Le panneau à droite de l'arbre affiche une partie intitulée "marqueurs".

  3. Choisir le type de requêtes à signaler.

Raccourcis

Pour retrouver facilement et rapidement vos requêtes et vos pages dans les résultats du test courant ou dans le panneau de validation d'un utilisateur virtuel, vous pouvez utiliser les raccourcis depuis l'arbre de la bibliothèque.

Notez que le raccourci ne fonctionnera que si une validation d'utilisateur virtuel ou un scénario contenant cette requête ou page a été joué auparavant dans le projet.

Procédure 8.4. Pour utiliser un raccourci depuis la bibliothèque

  1. Cliquer droit sur le noeud de la requête ou de la page de votre choix dans l'arbre.

  2. Une fenêtre contextuelle apparaît.

  3. Choisir entre voir la requête dans les résultats ou dans le panneau de validation d'un utilisateur virtuel.

Rechercher et remplacer

Neoload permet de modifier toutes les requêtes de la bibliothèque qui correspondent à une recherche. Cette fonctionnalité est accessible depuis le menu Edition ou depuis le menu contextuel de l'arbre de la bibliothèque et est accompagnée d'un assistant qui permet d'effectuer le remplacement.

Cette recherche peut s'effectuer soit dans les paramètres, dans les URLs, ou les entêtes.

Dans le cas des entêtes ou des paramètres la recherche peut s'effectuer de trois façon différentes :

  • Recherche dans les noms et les valeurs: la chaîne sera recherchée à la fois dans les noms et dans les valeurs des entêtes/paramètres et sera modifiée par la chaîne de remplacement.

  • Recherche dans les noms : la chaîne est recherchée exclusivement dans les noms et la valeur des entêtes/paramètres sera modifiée par la chaîne de remplacement.

  • Suppression : la chaîne est recherchée dans les noms des entêtes/paramètres et ceux-ci sont supprimés.

L'assistant demande alors d'entrer la chaîne à rechercher et la chaîne de remplacement. On peut utiliser une expression régulière comme chaîne de recherche/remplacement, pour cela il faut cocher "Rechercher en tant qu'expression régulière" (vous pouvez consulter le Guide des Expressions Régulières).

Après avoir entré les informations requises l'assistant vous demande une dernière confirmation avant de lancer la recherche. Vous pouvez alors vérifier vos paramètres et les modifier en cliquant sur précédant.

Cliquer sur terminer ferme l'assistant et lance la recherche.

Dans le cas où il n'y a pas de résultats, une popup vous invite à modifier vos paramètres de recherche.

Sinon une popup permettant de naviguer dans les résultats apparait. Les résultats sont marqués dans l'arbre de la bibliothèque et vous êtes immédiatement positionné sur la première occurence de la recherche.

  • Les boutons "Suivant" ou "Précédent" permettent de naviguer dans les résultats. Le texte qui sera modifiée est alors surligné:

  • Si vous sélectionnez d'autres actions dans l'arbre, le bouton "Actuel" permet de revenir à tout moment sur l'élément courrant.

  • Le bouton "Remplacer" effectue le remplacement de la chaîne surlignée par la valeur affichée dans la popup. Si vous avez remplacé tous les éléments trouvés, la popup se ferme et une boîte de dialogue vous informe qu'il n'y a plus de résultats.

  • Le bouton "Remplacer tout" remplace tous les éléments trouvés. Une boîte de dialogue vous indique alors le nombre de remplacement effectués.

L'extracteur de Liens et de Formulaires

L'extracteur de Liens et de Formulaires permet de rechercher et d'extraire un lien ou un formulaire d'une requête HTML précédente. Cela permet de prendre en compte facilement les paramètres dynamiques générés par le serveur.

Se reporter au guide des Expressions Régulières pour plus d'information sur les expressions régulières.

L'extracteur de liens

Dans ce mode, le chemin de la requête est interprété comme une expression régulière utilisée pour retrouver le lien dans la page. Avant de jouer la requête, NeoLoad remplace les valeurs dynamiques de la définition par les valeurs extraites du lien correspondant dans la page précédente (référant). Les expressions régulières sont de type Perl.

Les paramètres de requête interprétés comme des expressions régulières sont: le chemin, les paramètres de requête (nom et valeur) et le serveur. Si le nom du serveur est dynamique, créer un serveur dans NeoLoad dont le nom machine est l'expression régulière à rechercher dans la page.

Si plusieurs liens correspondent à la définition, alors NeoLoad en utilise un au hasard.

Note:

  • Le parseur de lien recherche des liens de la forme <a href="http://mydomain/mypath"></a> et prend en compte la base d'URL (<a base="mybaseUrl"></a>).

  • Les caractères réservés doivent être échappés dans la définition de l'extracteur de lien. Les caractères suivants doivent être échappés par '\': [ ] ^ \ { } ( ) .

Une fois le lien trouvé, il est possible de mettre la valeur des paramètres dans une variable NeoLoad. Pour cela, il suffit de rentrer le nom de la variable dans la colonne Extraire dans la variable du tableau des paramètres (cette colonne est visible uniquement en mode extracteur de lien).

Exemple

Considérons cet exemple: l'application web génère un identifiant de recherche (searchID), et cet identifiant est transféré de page en page comme paramètre de requête. L'enregistrement de la requête ressemble à:

Si vous lancez le test, NeoLoad jouera la requête avec le searchID enregistré. Il faut donc remplacer le searchID par la valeur appropriée. La page précédente contient le lien: <a href="http://ServerHostname/search.php?searchID=<mygoodsearchid>&page=2">Page2</a>

Changeons donc cette requête manuelle en Extracteur de lien:

Dans l'exemple, la valeur du searchID a été positionnée à ".*" qui signifie que le searchID peut prendre toute forme de valeur.

Le paramètre "page" peut aussi être positionné à ".*" ou"\d" (pour un seul chiffre). Alors, si vous avez différents liens comme:

<a href="http://ServerHostname/search.php?searchID=<mygoodsearchid>&page=2">page2</a>
<a href="http://ServerHostname/search.php?searchID=<mygoodsearchid>&page=3">page3</a>
<a href="http://ServerHostname/search.php?searchID=<mygoodsearchid>&page=4">page4</a>
Alors tous ces liens correspondront à la définition et NeoLoad en choisira un au hasard.

L'extracteur de formulaires

Le type de requête Extracteur de formulaires permet de retrouver un formulaire dans la page HTML précédente, et de le rejouer.

Les paramètres de requête interprétés comme des expressions régulières sont: le chemin, les paramètres du formulaire (nom et valeur) et le serveur. Si le nom du serveur est dynamique, créer un serveur dans NeoLoad dont le nom machine est l'expression régulière à rechercher dans la page.

Si plusieurs formulaires correspondent à la définition, alors NeoLoad en utilise un au hasard.

Note: Les caractères réservés doivent être échappés dans la définition de l'extracteur de formulaire. Les caractères suivants doivent être échappés par '\': [ ] ^ \ { } ( ) .

Une fois le formulaire trouvé, il est possible de mettre la valeur des paramètres dans une variable NeoLoad. Pour cela, il suffit de rentrer le nom de la variable dans la colonne Extraire dans la variable du tableau des paramètres (cette colonne est visible uniquement en mode extracteur de formulaire).

Exemple

Considérons une application avec un formulaire de recherche tel que celui-ci:

<form name="searchform" method="POST" action="search.php">
	<input type="text" name="name" size="30" value="">
	<input type="text" name="city" size="30" value="NY">
	<select name="country" id="country">
		<option value="US">US</option>
		<option value="Canada">Canada</option>
		<option value="China">China</option>
		<option value="France">France</option>
		<option value="UK">UK</option>
	</select>
	<input type="radio" name="fastsearch" value="YES">
	<input type="radio" name="fastsearch" value="NO">
	<input type="hidden" name="computedValue" value="4235">
	<input type="submit" name="Submit" value="Submit">
</form>

Dans cet exemple, le champ caché "computedValue" est généré côté serveur et diffère à chaque appel.

La requête enregistrée ressemble à:

Si vous lancez le test, NeoLoad jouera la requête avec la valeur enregistrée du paramètre "computedValue". Il doit être remplacé par la valeur appropriée: changer cette requête manuelle en extracteur de formulaire:

Utiliser ".*" comme valeur pour computedValue permet d'extraire la valeur générée par le serveur.

De plus, utiliser ".*" pour le champ country permet de choisir une valeur au hasard parmi les valeurs possibles de cette option. De la même manière, le champ "fastsearch" aura la valeur "YES" ou"NO" au hasard durant le test.

Ainsi, l'extracteur de formulaire ne vous permet pas seulement d'extraire des valeurs dynamique générées par le serveur mais permet aussi d'utiliser les différent choix du formulaire.

Gestion des paramètres dynamiques

Concept

La notion de paramètre dynamique dans NeoLoad représente les paramètres générés dynamiquement par le serveur et utilisés dans plusieurs requêtes d'un scénario. Ce type de paramètre peut être utilisé par exemple pour gérer les sessions utilisateur, ou conserver l'état de la navigation à un moment donné. Ces paramètres calculés par le serveur peuvent être insérés dans un champ caché d'un formulaire, ou dans un paramètre d'URL sans intervention de l'utilisateur.

Lors d'un test en charge, NeoLoad simule des centaines d'utilisateurs sur l'application, et chacun d'eux doit pouvoir utiliser la valeur du paramètre généré par le serveur, et non pas la valeur enregistrée lors de la création du scénario. Afin de gérer les paramètres dynamiques, il faut typiquement extraire la valeur générée par le serveur grâce à un extracteur de variable, puis la réinjecter dans les requêtes suivantes en lieu et place de la valeur enregistrée. Cela est tout a fait possible pour un paramètre dynamique isolé, mais peut devenir fastidieux pour un paramètre dynamique intervenant dans de nombreuses requêtes (nombreux remplacement dans la définition des requêtes), ou changeant de valeur régulièrement (nombreux extracteurs de variable à créer).

Afin de faciliter la gestion de ces paramètres, NeoLoad propose deux processus permettant de configurer facilement les paramètres dynamiques de l' application.

Lancer la recherche des paramètres dynamiques dans NeoLoad

La recherche des paramètres dynamiques est un processus pouvant être exécuté après un enregistrement (assistant de fin d'enregistrement), ou sur chaque utilisateur virtuel.

Pour lancer la recherche des paramètres dynamiques sur un utilisateur virtuel:

  1. Sélectionner le mode Conception

  2. Sélectionner l'onglet Utilisateurs virtuels

  3. Sélectionner un utilisateur virtuel dans l'arbre des profils d'utilisateurs virtuels

  4. Cliquer sur le bouton Recherche

L'assistant de recherche des paramètres dynamiques s'affiche alors, proposant d'exécuter les deux types de recherche de paramètre dynamique de NeoLoad:

  • Recherche des paramètres dynamiques de framework

  • Recherche des paramètres dynamiques génériques

Gestion des paramètres dynamiques de framework

Dans le cas de framework bien spécifique au développement d'une application, les paramètres dynamiques générés par le serveurs sont souvent les mêmes, et sont utilisés dans de nombreuses requêtes. Afin d'éviter de définir des extracteurs de variables sur de nombreuses requêtes, puis de définir l'utilisation de ces variables dans la définition des requêtes, NeoLoad vous propose de chercher ces paramètres pour vous et de configurer les extracteurs/remplacements de variable dans le scénario.

Fonctionnement

Afin que NeoLoad puisse faire une recherche de paramètres dynamiques de framework, il faut préalablement définir les paramètres dynamiques générés par votre framework. La définition des paramètres dynamiques de framework s'effectue dans le menu Edition / Préférences / Paramètres dynamiques.

La définition d'un paramètre dynamique de framework comprend:

  • Activé: doit être coché pour que NeoLoad recherche ce paramètre dynamique

  • Nom du paramètre: le nom du paramètre tel qu'il apparaît dans les requêtes (nom du champ caché du formulaire, ou nom du paramètre dans l'URL)

  • Framework: le nom du framework. Ce paramètre est optionnel, il permet de visualiser après une recherche de paramètre dynamique les différents paramètres trouvés

  • Expression régulière: l'expression régulière que doit utiliser NeoLoad pour chercher ce paramètre dynamique dans les réponses du serveur

  • Modèle: Le modèle à appliquer à l'expression régulière pour en extraire la valeur du paramètre dynamique (voir Extraction de variable).

Création d'un nouveau paramètre dynamique de framework

Afin de créer un nouveau paramètre dynamique de framework, entrer directement sa définition dans le tableau du menu Edition / Préférences / Paramètres dynamiques mais la manière la plus simple est de définir un extracteur de variable et de le convertir en paramètre dynamique de framework.

Création d'un paramètre dynamique de framework à l'aide d'un extracteur de variable

La manière la plus simple pour définir un paramètre dynamique de framework est de positionner un extracteur de variable sur une des requêtes dont la réponse du serveur contient ce paramètre dynamique, puis de convertir cet extracteur en paramètre dynamique de framework:

  1. Dans la bibliothèque, sélectionner une requête dont la réponse du serveur contient le paramètre dynamique

  2. Cliquer sur le bouton Avancé

  3. Sélectionner l'onglet Extracteurs de variable

  4. Cliquer sur le bouton + pour ajouter un extracteur de variable

  5. Définir un extracteur de variable permettant d'extraire la valeur dynamique (donner à la variable le nom du paramètre dynamique)

  6. Dans la liste des extracteurs de variable sélectionner l'extracteur venant d'être créé

  7. Cliquer sur le bouton Déplacer dans les paramètres de framework

  8. Enter le nom du paramètre, et le nom du framework

  9. Lancer la recherche de paramètre dynamique afin que NeoLoad puisse définir les autres extracteurs nécessaires et remplacer la valeur du paramètre par la variable extraite

Cet extracteur a alors été ajouté à la liste des paramètres de framework, et lors des prochaines recherches des paramètres dynamiques (après le prochain enregistrement par exemple) NeoLoad sera capable de configurer les extracteurs automatiquement et de remplacer la valeur statique dans les requêtes par la variable extraite.

L'utilisation d'un extracteur de variable pour ajouter un paramètre dynamique de framework permet de configurer facilement l'expression régulière et le modèle à appliquer pour trouver ce paramètre.

Gestion des paramètres dynamiques génériques

Le processus de recherche des paramètres dynamiques génériques dans NeoLoad est entièrement automatique. Ce processus permet à NeoLoad de rechercher les paramètres dynamiques dans votre application et de modifier votre scénario en conséquence.

Fonctionnement

Lors de l'enregistrement de votre scénario de test, NeoLoad enregistre toutes les requêtes HTTP/S envoyées par le navigateur au serveur. Lors de cet enregistrement, NeoLoad va enregistrer la valeur courante de tous les paramètres envoyés par le navigateur au serveur.

Grâce à la recherche des paramètre dynamiques génériques, NeoLoad va pouvoir essayer d'analyser votre scénario pour y trouver des paramètres dynamiques. Pour cela, NeoLoad va rejouer votre scénario avec les paramètres enregistrés, et va avant de jouer la page suivante essayer de trouver le lien correspondant à cette page dans la réponse du serveur. Si ce lien existe, c'est que tous les paramètres sont identiques entre l'enregistrement et le moment ou NeoLoad rejoue le scénario et qu'il n'y a donc pas de paramètre dynamique pour cette requête. Si ce lien n'existe pas, c'est que probablement la valeur d'un paramètre a changé entre l'enregistrement et le moment où NeoLoad rejoue le scénario. NeoLoad va alors analyser la page de réponse du serveur pour trouver quel paramètre n'a pas la même valeur, et configurer le scénario pour gérer ce paramètre.

Lors de la gestion des paramètres dynamiques, NeoLoad va utiliser les extracteurs de lien/formulaire pour gérer chaque paramètre dynamique.

Exemple

Prenons l'exemple d'une application avec un paramètre dynamique id calculé par le serveur et ajouté comme paramètre aux liens d'une page. Les liens dans la réponse du serveur ressemblent à:

<a href="viewCategory.shtml?categoryId=BIRDS&id=1181639214472">BIRDS</a>
<a href="viewCategory.shtml?categoryId=FISH&id=1181639214472">FISH</a>
<a href="viewCategory.shtml?categoryId=DOGS&id=1181639214472">DOGS</a>
<a href="viewCategory.shtml?categoryId=REPTILES&id=1181639214472">REPTILES</a>
<a href="viewCategory.shtml?categoryId=CATS&id=1181639214472">CATS</a>

Le paramètre id étant dynamique, il va prendre une valeur différente lors de l'exécution de chaque utilisateur virtuel. Après l'enregistrement de cette page, NeoLoad crée une requête comprenant la valeur du paramètre lors de l'enregistrement:

Lors de la recherche des paramètres dynamiques, NeoLoad ne va pas réussir à trouver ce lien exact dans la réponse du serveur, mais trouvera un lien identique avec une nouvelle valeur du paramètre id. Ainsi, lors d'une recherche des paramètres dynamiques, NeoLoad vous proposera de gérer ce paramètre dynamique de votre scénario:

Une fois les modifications proposées appliquées au scénario, voici la nouvelle définition de la requête gérant ce paramètre dynamique:

Dans cette définition modifiée, NeoLoad a transformé la définition manuelle de la requête en extracteur de lien, en positionnant le paramètre id comme dynamique (valeur .*). De plus NeoLoad mettra la valeur de ce paramètre dynamique dans la variable id lors de l'exécution du scénario, cette variable pouvant être utilisée plus loin dans le scénario.

Limites

Ce système à des limites quand NeoLoad n'est pas capable d'analyser suffisamment la réponse du serveur pour y trouver le paramètre qui a changé. Par exemple, si ce paramètre générique est calculé dans du code javascript, alors NeoLoad ne sera pas capable de le trouver.

Afin de gérer ces cas complexes il vous faudra alors utiliser un autre processus permettant de gérer les paramètres génériques de framework.

Les requêtes SOAP

Le module optionnel SOAP de NeoLoad permet de tester en charge les services Web au travers du protocole SOAP.

NeoLoad a deux modes de fonctionnement:

  • Déclarer puis entrer les paramètres d'appels de la requête (manuellement ou à partir d'un fichier de description WSDL)

  • Enregistrer puis modifier les paramètres d'une requête jouée par un client existant.

Créer une requête SOAP

Cette section décrit comment créer de toute pièce une requête SOAP. Se reporter à la section suivante pour enregistrer une requête d'un client existant.

Procédure 8.5. Créer une requête SOAP dans la bibliothèque de NeoLoad

  1. Cliquer sur l'onglet bibliothèque de la partie Conception.

  2. Cliquer au bouton droit sur le noeud bibliothèque et sélectionner Ajouter / Nouvelle Requête SOAP. Il est aussi possible de créer une requête SOAP en cliquant le bouton "Nouvelle Requête SOAP" du panneau du noeud bibliothèque.

  3. Suivre l'assistant et choisir le mode d'édition des paramètres:

    1. Créer a partir d'un fichier descriptif WSDL:

      1. Entrer l'URL d'accès au WSDL. Utiliser le sélecteur de fichier pour utiliser un fichier du disque, ou entrer l'URL d'accès à un serveur web, par exemple http://myserver/app/myservice?WSDL.

      2. Choisir la méthode (ou opération) à tester dans la liste déroulante.

      3. Choisir un nom pertinent pour nommer la requête SOAP.

      4. Entrer l'URL d'accès au service web ("End point"). L'URL définie dans le WSDL est affichée par défaut.

    2. Créer pour une édition manuelle de la requête XML.

      1. Choisir un nom pertinent pour nommer la requête SOAP.

      2. Entrer l'URL d'accès au service web ("End point").

Enregistrer une requête SOAP

Cette section décrit comment enregistrer l'interaction entre un client SOAP existant et le serveur de services web.

Procédure 8.6. Enregistrer une requête SOAP.

  1. Modifier les paramètres du client SOAP afin qu'il utilise NeoLoad comme proxy:

    • hostname: nom ou adresse IP de la machine ayant le contrôleur NeoLoad de lancé.

    • port: port de l'enregistreur HTTP de NeoLoad, 8090 par défaut. Ce paramètre est modifiable dans les préférences de NeoLoad.

    Veuillez vous reporter à la documentation de votre framework de web services pour modifier les paramètres de proxy. Pour information,

    1. Pour Axis: Positionner les propriétés systèmes http.proxyHost et http.proxyPort.

      Par exemple, placer le code suivant dans votre code:

      System.setProperty("http.proxyHost", "localhost");
      System.setProperty("http.proxyPort", "8090");

      ou modifier la ligne de commande:

      java -Dhttp.proxyHost=localhost -Dhttp.proxyPort=8090 ...

    2. Pour .Net. Il est possible de modifier le fichier de configuration

      <configuration>
         <system.net>
            <defaultProxy>
               <proxy
                  usesystemdefault = "false"
                  proxyaddress="http://localhost:8090"
                  bypassonlocal="true"
               />
            </defaultProxy>
         </system.net>
      </configuration>

      Pour plus d'information, voir http://support.microsoft.com/default.aspx?scid=kb;[LN];318140

  2. Lancer NeoLoad

  3. Lancer un enregistrement (Voir la section intitulée « Enregistrer un scénario »). Puisque l'enregistrement ne nécessite pas de navigateur, il est préférable de décocher l'option "Démarrer le navigateur".

  4. Lancer votre client SOAP. Puisque celui-ci est configuré pour utiliser l'enregistreur NeoLoad comme proxy, NeoLoad enregistre la requête.

  5. Arrêter l'enregistrement.

Editer une requête SOAP

Description du panneau d'édition des requêtes SOAP:

  • Nom. Nom de la requête

  • Description. Note facultative sur cette requête.

  • URL. URL, non éditable, d'accès au service Web.

  • Serveur. Nom du serveur d'accès au service Web.

  • Chemin. Chemin d'accès au service Web, relatif au serveur sélectionné.

  • WSDL. URL d'accès au WSDL. Pour un fichier sur disque il s'agit d'une URL de la forme file:/C:/... Utiliser le sélecteur de fichier. Pour un fichier online, utiliser l'habituel http://myserver/myapp/myservice?WSDL.

    Le bouton Recharger permet de recharger le WSDL, puis de choisir une méthode parmi celles définies dans le WSDL. Cela redéfinit les paramètres de la requête. Après confirmation, les paramètres existants de la requête seront supprimés.

  • Mode d'édition. 

  • Méthode. Méthode SOAP à appeler, non éditable directement. Le bouton Recharger permet de choisir une autre méthode, disponible uniquement si un WSDL a été spécifié.

  • Contenu. Editer les paramètres WSDL ou le contenu XML selon le mode d'édition choisi.

  • Test. Permet de tester rapidement l'appel de la requête. Cliquer sur le bouton "Valider" génère un Utilisateur Virtuel temporaire contenant la requête éditée, puis lance la validation de cet Utilisateur Virtuel.

[Note]Note

Les boutons "Avancé..." et "Validation..." offrent les mêmes fonctionnalités que pour une requête HTTP classique et permettent ainsi d'éditer les entêtes HTTP, créer des extracteurs de variables ou des validations de contenu.

Editer les paramètres extraits du WSDL

Lors du chargement du fichier WSDL, NeoLoad génère une arborescence par défaut de paramètres et des entêtes SOAP. Les paramètres optionnels peuvent être supprimés, et d'autres paramètres peuvent être ajoutés si la description WSDL l'autorise.

Paramètres

L'onglet paramètres permet d'éditer, supprimer ou d'ajouter des paramètres.

L'édition des paramètres reflète les contraintes décrites dans le WSDL.

Il y a deux types de paramètres:

  • les éléments feuille comme une valeur texte ou numérique dont la valeur peut être éditée.

    Cette valeur peut être une valeur littérale ou une variable. L'encodage permet d'encoder les caractères réservés comme '>' et '<'. Dans le cas d'une variable, il est possible de décocher l'option "encoder la valeur" si la valeur de la variable est déjà encodée.

    Le type affiché de la valeur est le type au sens WSDL, par exemple {http://www.w3.org/2001/XMLSchema}string. Il est de la responsabilité de l'utilisateur de respecter la syntaxe du type de la valeur.

  • les éléments conteneur qui contiennent d'autres éléments.

    • les éléments de type sequence contiennent d'autres éléments dans un ordre spécifique et avec la cardinalité décrite dans le WSDL. Par exemple, la sequence S doit contenir de zéro à trois élément A et au moins un élément B, dans cet ordre.

    • les éléments de type All contiennent d'autres éléments une et une seule fois, dans un ordre indéterminé.

    • les éléments de type Choice contiennent un seul élément fils, parmi les différents éléments fils autorisés.

    Les contraintes des éléments conteneur sont affichées pour information dans le bas du panneau d'édition de ces conteneurs (section "Elements fils").

Pour ajouter un élément fils à un conteneur utiliser le bouton '+' ou utiliser le bouton droit avec "Ajouter". Dans les deux cas, la liste des éléments à ajouter est restreinte aux éléments fils autorisés par le WSDL. L'élément est automatiquement inséré à l'endroit approprié au sein des autres éléments fils en cas de contrainte d'ordre.

Pour supprimer un élément fils d'un conteneur utiliser le bouton '-' ou utiliser le bouton droit avec "Supprimer".

Pour déplacer un élément fils au sein d'un conteneur utiliser le bouton de déplacement approprié ou le bouton droit avec "Monter" ou "Descendre".

[Note]Note

Si une contrainte du WSDL sur le conteneur n'est pas respectée, une icône d'erreur est ajoutée à l'icône du conteneur et un message d'erreur est ajouté au panneau d'édition (section "Elements fils") du conteneur en erreur.

La section attributs permet d'éditer les attributs du paramètre. Les attributs autorisés sont listés dans la table. La première colonne "Utiliser" permet d'ajouter l'attribut sélectionné au paramètre. Entrer une valeur dans la colonne valeur ajoute automatiquement l'attribut aux paramètres. Il n'est pas possible d'ajouter des attributs non prévus par le WSDL.

Entêtes

L'onglet entête permet de paramétrer les entêtes SOAP déclarées dans le WSDL.

Cette partie a un fonctionnement similaire à la partie paramètres.

La section spécifique aux entêtes est la partie Entêtes SOAP qui permet de définir l'attribut "Actor" du protocole SOAP.

Avancé

Cet onglet permet de définir deux paramètres:

  • le style du message. Les styles supportés sont: RPC/Encoded, RPC/literal, Document/literal et Wrapped Document/literal. Le style sélectionné est celui déclaré dans le WSDL. Ce paramètre ne doit pas être modifié en temps normal car le web service s'attend à être contacté avec un style prédéterminé (celui du WSDL).

  • le format d'encapsulation des attachements binaires: MIME ou DIME. Comme pour le style du message, ce paramètre est extrait du WSDL et ne doit pas être modifié en temps normal.

Aperçu XML

L'aperçu XML permet de prévisualiser le corps XML de la requête tel qu'il sera généré. L'aperçu n'est pas éditable et ne comprend que le corps XML du message (pas les attachements binaires) en cas d'attachement.

Effectuer une validation de la requête pour avoir un aperçu de l'intégralité de la requête HTTP.

Editer le contenu XML

Si le fichier WSDL n'est pas défini ou si l'édition des paramètres WSDL ne peut être utilisée, il est possible de définir manuellement le corps XML du message.

Pour cela éditer le texte XML ou éditer l'arbre XML.

Texte XML

Cet onglet permet d'éditer le texte XML.

[Astuce]Astuce

Utiliser le click droit ou taper 'Ctrl-F' pour effectuer une recherche.

Arbre XML

Cet onglet permet d'éditer les noeuds de l'arbre XML dans vue arborescente. Cette vue est particulièrement adaptée pour utiliser des variables grâce au sélecteur de variables.

Lorsque la valeur d'un noeud contient une variable, il est possible de ne pas l'encoder au sens XML si elle est déjà encodée. Dans ce cas, NeoLoad ajoutera l'attribut NeoLoad-encode="false" au noeud correspondant, visible dans le vue Texte XML. Cet attribut supplémentaire sera supprimé lors du test au moment de l'encodage XML et ne sera pas envoyé au serveur.

Aperçu

Cet onglet permet d'obtenir un aperçu en lecture seule du corps de la requête qui sera envoyé.

Les variables sont interprétées et les retours chariots supprimés (voir l'astuce ci-dessous).

[Astuce]Astuce

La requête ne contient aucun retour chariot afin d'être plus compacte lors du test, utiliser le bouton droit "Indenter le XML" pour obtenir un texte plus lisible.

Paramétrer l'entête HTTP "SOAPAction"

L'entête HTTP nommé SOAPAction est requise par SOAP 1.1. Cette entête est ajoutée automatiquement avec la valeur appropriée au moment du chargement du WSDL, ou enregistrée en cas de d'enregistrement de la requête.

Editer les entêtes HTTP de la requête pour modifier cette valeur. Pour cela, cliquer sur le bouton "Avancé..." et sélectionner l'onglet "Entête de requête".

Vérifier une requête SOAP

Utiliser le bouton Valider de la section test pour tester la requête courante.

NeoLoad crée un Utilisateur Virtuel temporaire comprenant uniquement la requête, puis lance la fenêtre de validation de cet utilisateur virtuel. Cliquer sur le bouton Lancer la Validation.

La section détail permet d'accéder au détail de la requête envoyée, au détail de la réponse du serveur ainsi qu'aux messages des assertions.

[Astuce]Astuce

Utiliser au click droit "Indenter le XML" dans le champ de texte pour analyser plus facilement la requête envoyée. Utiliser au click droit "Rechercher..." ou taper Ctrl-F pour effectuer une recherche.