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.
- Dans le navigateur de test, accédez au test, puis cliquez deux fois dessus.
Le test s'affiche.
- 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 :
- Exécutez le test ou la planification pour ajouter les bibliothèques Java™ en cours au
chemin d'accès aux classes.
- 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.
- 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.
- Ajoutez l'instruction d'importation Java suivante :
Import com.ibm.rational.test.lt.execution.http.util.CookieCacheUtil;
- 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 :
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;
}
}