Influence des boucles sur l'état des utilisateurs virtuels

Si les points de vérification échouent de manière inattendue lors d'une exécution, cela peut être dû au fait que les utilisateurs virtuels des boucles ne conservent pas leur état d'origine. Pour permettre à chaque utilisateur virtuel d'accéder à la boucle à l'état d'origine, vous pouvez modifier les options HTTP du test ou ajouter un code personnalisé.

Pourquoi et quand exécuter cette tâche

Par défaut, le cache des cookies d'un utilisateur virtuel n'est pas réinitialisé lors d'une exécution de test. Ce qui est incohérent avec le comportement d'un navigateur. Si un test ou une planification contient des boucles et qu'un serveur Web définit un cookie lors de la première itération de la boucle, ce cookie est "gardé en mémoire" lors des itérations suivantes.

Toutefois, dans certaines circonstances, vous pouvez vouloir effacer tous les cookies mis en mémoire cache pour un utilisateur virtuel particulier. Par exemple, si vous vous souhaitez que chaque itération d'une boucle apparaisse comme nouvel utilisateur, vous devez réinitialiser le cache. Si ce n'est pas le cas, les points de vérification du test peuvent échouer même si le test aboutit.

Il existe deux manières de réinitialiser la mémoire cache des cookies, chacune ayant des effets différents.

Pour réinitialiser la mémoire cache des cookies lors d'une boucle dans le planning ou lorsque le test suit un autre test du planning, utilisez la méthode ci-après. La mémoire cache est réinitialisée chaque fois que le test est ouvert. Même si votre test ne boucle pas, utilisez cette méthode si vous exécutez des tests jumelés ou des tests Siebel.

  1. Dans le navigateur de test, accédez au test, puis cliquez deux fois dessus. Le test s'affiche.
  2. Dans la page Options HTTP, sélectionnez Vider la mémoire cache des cookies au démarrage du test.

Procédure

Pour réinitialiser la mémoire cache des cookies entre les différentes itérations de boucle lorsque vous avez placé l'intégralité du contenu du test dans une boucle et que cette boucle se trouve dans le test, ajoutez un code personnalisé au test et appelez une API, de la manière suivante :

  1. Exécutez le test ou la planification pour ajouter les bibliothèques Java™ en cours au chemin d'accès aux classes.
  2. Ouvrez le test et sélectionnez l'élément de test se trouvant au point où vous souhaitez que le cache de cookies soit réinitialisé. Cette opération est généralement effectuée à la fin de la boucle.
  3. Cliquez sur Ajouter ou Insérer et sélectionnez Code personnalisé. Le bouton Ajouter permet d'ajouter le code personnalisé à la fin de l'élément sélectionné (test ou page de test). Le bouton Insérer ajoute le code personnalisé au dessus de la page sélectionnée ou de la demande de page.
  4. Ajoutez l'instruction d'importation Java suivante : Import com.ibm.rational.test.lt.execution.http.util.CookieCacheUtil;
  5. Ajoutez le code Java suivant dans la méthode exec : CookieCacheUtil.clearCookieCache(tes);

Exemple

L'exemple suivant affiche un ajout de code personnalisé qui réinitialise la mémoire cache des cookies. Les lignes que vous ajoutez au modèle de code personnalisé généré sont affichées en gras :
Remarque : Pour un autre exemple de code personnalisé qui définit et supprime des cookies, voir Définition et suppression des cookies d'un utilisateur virtuel.
package test;

import com.ibm.rational.test.lt.execution.http.util.CookieCacheUtil;
import com.ibm.rational.test.lt.kernel.services.ITestExecutionServices;

public class Class1131739398417 implements
		com.ibm.rational.test.lt.kernel.custom.ICustomCode2 {
		
	public Class1131739398417() {
	}
	public String exec(ITestExecutionServices tes, String[] args) {
		CookieCacheUtil.clearCookieCache(tes);
		return null;
	}
 }

Retour d'informations