Ausgangssituation: unser Testsystem ist aus dem Internet erreichbar und durch ein Cookie geschützt. Das Cookie wird nach einer erfolgreichen Anmeldung bei sog. Access Controller gesetzt. Der Access Controller soll nicht im Lasttest getestet werden, nur ein hinter dem Access Controller liegendes System soll getestet werden.
Lösung 1:
Nach jedem Aufnehmen der Skripten entsprechendes Cookie jedem Request hinzufügen.
Lösung 2:
NeoLoad erledigt es selbst.
In einem NeoLoad-Projekt erstelle ich einen neuen User Path und in „Actions“ füge eine Seite (Page) mit einem Request ein. In dem Beispiel verwende ich eine Standardinstallation vom tomcat.

Wenn ich den Skript ausführe, sendet NeoLoad kein Cookie.

Damit NeoLoad ein Cookie jedem Request hinzufügen kann, benötige ich ein „JavaScript“ Container vor dem ersten Request.

Der JavaScript Quelltext:
var today = new Date(); // 24h in ms var oneDay = 1000 * 60 * 60 * 24; var expiresDays = 7 * oneDay; var expires = new Date(today.getTime() + expiresDays); var cookie = "accessGranted=yes; expires=" + expires.toGMTString() +"; path=/"; context.currentVU.setCookieForServer("host", cookie); if (logger.isDebugEnabled()){ logger.debug("cookie: '" + cookie + "'."); }
Nach der Ausführung wird ein gesendeter Cookie „accessGranted“ sichtbar.

1 Gedanke zu “Cookie für einen Server in NeoLoad setzen”