Instructions pour l'ajustement de la corrélation des données

Lors de l'exécution d'un test, il se peut que la charge du serveur ne corresponde pas à la charge attendue ou que votre base de données ne soit pas mise à jour comme prévu. Une corrélation incomplète ou incorrecte des données peut être à l'origine de ces incidents.
Pour identifier les incidents liés à la corrélation de données, procédez comme suit :
  1. Exécutez un test séparément ou dans un planning en associant le Niveau de journalisation des erreurs, des incidents et des avertissements à la valeur Tous.
  2. Après l'exécution, ouvrez le journal de test conformément aux instructions de la rubrique Affichage des journaux de test.
  3. Comme expliqué dans la rubrique Vérification des détails du journal de test dans la vue Données de protocole, vérifiez que chaque appel envoyé au serveur a renvoyé les données attendues.

Les algorithmes de corrélation des données utilisés pendant la génération du test se fondent sur les meilleures pratiques connues. Toutefois, comme ces pratiques évoluent constamment, plusieurs types d'erreur peuvent survenir lors de la corrélation automatisée des données :

Corrélation insuffisante : des paramètres portent des noms différents ou apparaissent dans des emplacements inattendus

Lorsque deux paramètres qui doivent être corrélés portent des noms différents, la corrélation automatisée des données ne reconnaît pas que ces deux paramètres sont liés. Prenez par exemple le cas de la demande http://madeupsite.ibm.com?id=12345. Imaginez que cette demande doit être corrélée avec la réponse du serveur contenant customer_id=12345 et non id=12345. Dans ce cas, le paramètre id doit être corrélé à customer_id.

En général, la corrélation des données établit un lien entre une réponse renvoyée par le serveur et une demande ultérieure. Les algorithmes de corrélation automatisée recherchent des correspondances possibles dans l'URL et les données POST. Il existe toutefois d'autres moyens de renvoyer des paramètres. Prenez par exemple le cas de la demande http://madeupsite.ibm.com?id=12345. Imaginez que cette demande doit être corrélée avec la réponse du serveur contenant la paire nom/entité href name="id" entity="12345" au lieu de id=12345. Dans ce cas, le paramètre id doit être corrélé avec name="customer_id" et la valeur 12345 doit être corrélée avec entity="12345".

Vous trouverez ci-après d'autres causes de corrélation insuffisante.
  • Siebel utilise le format de matrice en étoile. Les algorithmes de corrélation standard ne peuvent pas extraire de données de ce format ni les remplacer.
  • SOAP désigne les paramètres de corrélation dans des fichiers XML externes. Les algorithmes de corrélation ne peuvent pas corréler les paramètres du fichier externe à des paramètres du test.
Pour effectuer une corrélation manuelle dans ces cas, suivez les instructions ci-dessous.
  1. Dans l'éditeur de test, utilisez la fonction de recherche ou de navigation pour localiser les deux paramètres à corréler.
  2. Accédez au paramètre qui apparaît ultérieurement dans le test. Il s'agit du site de substitution. Sélectionnez le paramètre.
  3. Dans la fenêtre Sources de données du test, cliquez sur l'onglet Références.
  4. Sélectionnez la source de données à utiliser comme référence, puis cliquez sur Remplacer à partir de.

Corrélation insuffisante : un paramètre n'a pas de nom.

Parfois, une valeur ou un paramètre doit être corrélé avec une valeur ou un paramètre précédent qui n'est pas spécifié dans le test, car il est calculé, par exemple, par un programme JavaScript™. Dans ce cas, pour réussir la corrélation des données, vous devez comprendre comment et où cette valeur ou ce paramètre a été calculé, puis utiliser un bloc de code personnalisé. Reportez-vous à la rubrique Extension de l'exécution d'un test avec du code personnalisé pour plus d'informations sur le code personnalisé.

Soit par exemple, l'adresse Web http://www.madeupsite.com?login_stamp=12345_Apr_11_07, où la valeur horodatage_connexion correspond à la concaténation de l'ID connexion et de la date du jour. Dans ce cas, vous avez besoin d'un code personnalisé qui effectue la concaténation de l'ID connexion et de la date.

Supposons maintenant que le serveur ait renvoyé l'ID connexion et la date comme des entités distinctes : href "customer_id=12345" Date="Apr_11_07". Dans ce cas, vous pouvez placer ces paramètres dans des références distinctes, puis, dans les demandes ultérieures utilisant l'ID client et la date, les remplacer séparément.

Corrélation superflue

La corrélation automatisée des données repose sur la correspondance de modèles : une valeur ou un paramètre est corrélé avec une valeur ou un paramètre ultérieur dont le nom est identique ou similaire. Cependant, il arrive parfois que des paramètres possédant des noms identiques ou similaires n'aient aucun lien entre eux. Dans le meilleur des cas, une corrélation inutile est sans danger ou augmente légèrement la charge pour rien. Dans le pire des cas, l'application n'attend pas de corrélation et échoue lors de la lecture.

Pour supprimer une corrélation superflue des données, effectuez les opérations ci-dessous.
  1. Dans l'éditeur de test, utilisez la fonction de recherche ou de navigation pour localiser le site de substitution qui ne doit pas être corrélé. Les lettres violettes signalent par défaut les données corrélées.
  2. Cliquez à l'aide du bouton droit de la souris sur le site de substitution.
  3. Cliquez sur Supprimer la substitution.

Corrélation incorrecte

Il se peut qu'un paramètre requérant une corrélation de données apparaisse plusieurs fois dans un test. Par exemple, un paramètre d'ID session utilisé à l'origine lorsqu'un utilisateur se connecte peut également être utilisé dans les demandes ultérieures. Si plusieurs instances d'un paramètre dans un test sont différentes, il se peut que les algorithmes de corrélation choisissent la mauvaise instance.

Les préférences de génération de test HTTP vous permettent d'optimiser la précision et l'efficacité de la corrélation de données automatisée.
  • Précision : chaque occurrence du paramètre est corrélée avec l'occurrence précédente la plus proche. Il s'agit de la valeur par défaut.
  • Efficacité : chaque occurrence du paramètre est corrélée avec une occurrence précédente unique.
Remarque : Si vous n'appliquez pas de corrélation manuelle dans la zone Referer d'un en-tête de requête HTTP, cette zone est automatiquement corrélée en cas de besoin. Si vous appliquez une corrélation manuelle dans la zone Referer d'un en-tête de requête HTTP, aucune corrélation automatique n'est effectuée.
Le risque de corrélations incorrectes est plus élevé lorsque l'option Optimiser la corrélation automatique des données pour l'exécution est associée à la valeur Efficacité. Pour résoudre une corrélation incorrecte, procédez comme suit :
  1. Dans l'éditeur de test, utilisez la fonction de recherche ou de navigation pour localiser la valeur incorrectement corrélée.
  2. Cliquez à l'aide du bouton droit de la souris sur le site de substitution.
  3. Cliquez sur Supprimer la substitution.
  4. Cliquez à nouveau à l'aide du bouton droit de la souris sur le site de substitution.
  5. Cliquez sur Remplacer à partir de et sélectionnez le paramètre correct.

Retour d'informations