Auswirkungen von Schleifen auf den Status virtueller Benutzer

Falls während eines Testlaufs unerwartet Fehler bei Prüfpunkten auftreten, kann dies daran liegen, dass virtuelle Benutzer in Schleifen nicht in ihrem ursprünglichen Status verbleiben. Damit alle virtuellen Benutzer im ursprünglichen Status in die Schleife eintreten, können Sie die HTTP-Optionen des Tests ändern oder angepassten Code hinzufügen.

Informationen zu diesem Vorgang

Standardmäßig wird der Cookie-Cache für einen virtuellen Benutzer während eines Testlaufs nicht zurückgesetzt. Dies entspricht dem normalen Verhalten eines Browsers. Falls ein Test oder ein Zeitplan Schleifen enthält und ein Web-Server während der ersten Iteration der Schleife ein Cookie platziert, wird dieses Cookie bei den folgenden Iterationen erneut verwendet.

Gelegentlich kann es jedoch vorkommen, dass Sie alle Cookies löschen möchten, die für einen bestimmten Benutzer im Cache gespeichert sind. Wenn beispielsweise jede Iteration einer Schleife als neuer Benutzer erscheinen soll, müssen Sie den Cache zurücksetzen. Geschieht dies nicht, so wird zwar der Test vollständig ausgeführt, jedoch werden von den festgelegten Prüfpunkten innerhalb des Tests eventuell Fehler gemeldet.

Es gibt zwei Möglichkeiten, den Cookie-Cache zurückzusetzen, die jeweils verschiedene Auswirkungen haben.

Falls Sie den Cookie-Cache zurücksetzen möchten, wenn eine Schleife im Zeitplan durchlaufen wird oder der Test auf einen anderen Test im Zeitplan folgt, verwenden Sie die folgende Methode. Dadurch wird der Cache bei jedem Testbeginn zurückgesetzt. Verwenden Sie im Falle von Back-to-Back-Tests oder Siebel-Tests diese Methode auch dann, wenn die Tests nicht in einer Schleife ausgeführt werden.

  1. Navigieren Sie im Testnavigator zu dem Test und klicken Sie doppelt darauf. Der Test wird geöffnet.
  2. Wählen Sie auf der Seite "HTTP-Optionen" die Option Cookie-Cache beim Start des Tests löschen aus.

Vorgehensweise

Wenn der Cookie-Cache in dem Fall, dass Sie den gesamten Inhalt des Tests in eine Schleife eingefügt haben und sich die Schleife innerhalb des Tests befindet, zwischen den Schleifeniterationen zurückgesetzt werden soll, fügen Sie angepassten Code zum Aufrufen einer API in den Test ein, wie es nachfolgend angegeben ist.

  1. Führen Sie den Test oder Zeitplan aus, um die aktuellen Java™-Bibliotheken zum Klassenpfad hinzuzufügen.
  2. Öffnen Sie den Test und wählen Sie das Testelement aus, das sich an der Stelle befindet, an der der Cookie-Cache zurückgesetzt werden soll. Üblicherweise geschieht dies am Ende der Schleife.
  3. Klicken Sie auf Hinzufügen oder Einfügen und wählen Sie Angepasster Code aus. Mit Hinzufügen wird der angepasste Code am Ende des ausgewählten Elements (Test oder Testseite) angehängt. Mit Einfügen wird der angepasste Code oberhalb der ausgewählten Seite oder Seitenanforderung eingefügt.
  4. Fügen Sie die folgende Java-Importanweisung hinzu: Import com.ibm.rational.test.lt.execution.http.util.CookieCacheUtil;
  5. Fügen Sie innerhalb der exec-Methode folgenden Java-Code ein: CookieCacheUtil.clearCookieCache(tes);

Beispiel

Das folgende Beispiel zeigt die Einfügung von angepasstem Code, durch den der Cookie-Cache zurückgesetzt wird. Die Zeilen, die zusätzlich in die generierte angepasste Codeschablone eingefügt werden müssen, sind fett dargestellt:
Anmerkung: Ein weiteres Beispiel für angepassten Code, mit dem Cookies gesetzt und gelöscht werden, finden Sie unter Cookies für einen virtuellen Benutzer festlegen und löschen.
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;
	}
 }

Feedback