Outils pour utilisateurs

Outils du site


performance:loadrunner

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
performance:loadrunner [19.12.2012 12:09] – Ajout de la variabilisation avec TruClient youp3performance:loadrunner [19.12.2013 16:52] (Version actuelle) – Ajout de l’astuce pour qu’une transaction se termine avec succès youp3
Ligne 1: Ligne 1:
 ====== LoadRunner ====== ====== LoadRunner ======
-Cette page rassemble les trucs et astuces pour le produit HP LoadRunner+Cette page rassemble les trucs et astuces pour le produit HP LoadRunner.\\ 
 +Un bon document de base à lire : {{:performance:hp_loadrunner_v11_00_-_ajax_truclient_tips_and_tricks.pdf|}}
 ===== Timestamp en millisecondes ===== ===== Timestamp en millisecondes =====
 Le timestamp généré par LoadRunner est exprimé en secondes. Si vous avez une application utilisant des timestamp en millisecondes, voici un moyen pour en générer. Le timestamp généré par LoadRunner est exprimé en secondes. Si vous avez une application utilisant des timestamp en millisecondes, voici un moyen pour en générer.
Ligne 36: Ligne 37:
  
 ===== TruClient ===== ===== TruClient =====
 +===== Transaction =====
 +Pour qu’une transaction se termine correctement (si elle s’est bien déroulée), il faut absolument mettre un objet //Verify// __juste avant la fin de la transaction__. Attention, ne fonctionne pas si le Verify se trouve dans une boucle //For// ou une condition //If//.
 +
 ==== Utiliser une variable LoadRunner ==== ==== Utiliser une variable LoadRunner ====
 Définissez votre variable de manière classique, dans le VUGen. Définissez votre variable de manière classique, dans le VUGen.
Ligne 41: Ligne 45:
 <code>Login=LR.getParam("LOGIN");</code> <code>Login=LR.getParam("LOGIN");</code>
 Ensuite dans l'objet à variabiliser, vous pouvez utiliser la variable javascript //Login// que vous venez de définir. Ensuite dans l'objet à variabiliser, vous pouvez utiliser la variable javascript //Login// que vous venez de définir.
 +
 +==== Wait randomisé ====
 +TruClient ne permet pas de randomiser les temps d’attentes au niveau des paramètre de tir, en définissant un pourcentage de variabilité, comme dans les scripts web (HTTP/HTML). Il est néanmoins possible de se rapprocher de ce comportement en remplaçant la valeur d’un Wait avec un code de ce genre :
 +<code>Math.floor (11*Math.random () +5);</code>
 +Dans cet exemple, cela donne un temp compris entre 5 et 15 secondes, puisque le 11*Math.random () retourne un aléa dont la valeur est comprise entre 0 et 10 inclus.
 +
 +==== Écriture dans les logs ====
 +Pour facilité le débogage de vos scripts, il est toujours intéressant de pouvoir écrire dans les logs du script exécuté. Pour cela, il faut utiliser la commande //LR.log(text, level)//. La commande suivante écrit le message « Votre message » en tant qu’avertissement. Le script continuera donc son exécution.
 +<code>LR.log("Votre message", "Warning");</code>
 +level peut prendre les valeurs suivantes :
 +  * Error
 +  * Warning
 +  * Standard
 +  * Extended
 +  * Status
 +
 +==== Boucle While ====
 +TruClient ne propose pas la boucle While pour l’organisation du code. Il est cependant possible d’obtenir le même résultat avec une boucle For, dans laquelle il faut uniquement remplir le champ Condition des Arguments.
 +Ce qui donne par exemple :
 +<code>For ([Init]; getStyle("popup_message","display") != "none"; [Increment])</code>
 +
 ==== Modifier des paramètres Firefox pendant le tir ==== ==== Modifier des paramètres Firefox pendant le tir ====
 TruClient est assez pauvre en ce qui concerne les options de réglage du navigateur Firefox. Il se limite principalement aux réglages du proxy. Alors comment faire pour modifier d'autres paramètres du navigateur pour qu'ils soient actifs durant le déroulement d'un scénario ? TruClient est assez pauvre en ce qui concerne les options de réglage du navigateur Firefox. Il se limite principalement aux réglages du proxy. Alors comment faire pour modifier d'autres paramètres du navigateur pour qu'ils soient actifs durant le déroulement d'un scénario ?
Ligne 59: Ligne 84:
 <code>setLanguage("fr, fr-FR");</code> <code>setLanguage("fr, fr-FR");</code>
 Et voilà ! Maintenant le navigateur utilisera le français par défaut pour le contenu des pages. Et voilà ! Maintenant le navigateur utilisera le français par défaut pour le contenu des pages.
 +
 +==== Trouver un ou plusieurs éléments grâce à la classe ====
 +Pour trouver un élément, il faut utiliser la fonction //document.querySelectorAll//.
 +<code>/*<div class="boite_alerte" style="display: block;">
 +* Certaines taches sélectionnées ont déjà été acceptées par un autre utilisateur </div>*/
 +
 +var results = document.querySelectorAll('div[class="boite_alerte"]');
 +var my_results="";
 +var valid_results=new Array();
 +var vr_i=0;
 +//window.alert(results.length);
 +for (var i = 0; i < results.length; i++) {
 +  if ( results[i].textContent.match(/Certaines taches sélectionnées ont déjà été acceptées par un autre utilisateur/)
 +       && document.defaultView.getComputedStyle(results[i],null).getPropertyValue("display") != "none" ) {
 +    valid_results.push(results[i]);
 +    //window.alert("Le contenu est : " + valid_results[vr_i].textContent);
 +    vr_i++;
 +  }
 +}
 +//for (var i = 0; i < vr_i; i++) {
 +//  my_results = my_results + valid_results[i].value + "\n";
 +//}
 +//window.alert(my_results);
 +
 +if ( valid_results.length > 0) {
 +  window.var_for=0;
 +  true;
 +}
 +else {
 +  //Permet de sortir de la boucle For
 +  window.var_for=1;
 +  false;
 +}</code>
  
 ===== Erreurs ===== ===== Erreurs =====
performance/loadrunner.1355918940.txt.gz · Dernière modification : de youp3