2016-08-08 46 views
1

Ich habe eine Situation hier, wo in I 2 Schleifen hat, so dass,Nested Loops und Endbedingung in JMeter

1.Loop Controller (runs n times) 
    2. While Controller (exits based on HTTP response below || after some time gap) 
    3. HTTP Sampler 

Nun, ich einen Beanshell Postprozessor so schreiben geplant, dass das HTTP-Ergebnis und Updates parst eine Variable $ {TERMINATION_CONDITION}, die bei der Beendigung der While-Schleife verwendet werden kann.

Ich möchte jedoch, dass $ {TERMINATION_CONDITION} so zurückgesetzt wird, dass, wenn die äußerste Schleife (d. H. Schleifensteuerung) ein zweites Mal eintritt, es ermöglicht, die innere While-Schleife erneut auszuführen.

In meinem Fall geschieht dies nicht, da $ {TERMINATION_CONDITION} nicht ordnungsgemäß aktualisiert wird.

Meine Frage ist:

  1. Wann Postprozessor ausgeführt werden sollen, wenn ich ein unter a) HTTP Sampler als Mutter b) While-Schleife-Controller als Mutter c) Schleifen Controller als Mutter hinzufügen

  2. Wie können wir eine Variable nach einer Iteration der inneren Schleife zurücksetzen?

Bitte helfen Sie mir zu verstehen. Danke im Voraus!

Antwort

3
  1. Über die Reihenfolge der Ausführung sollten Sie this lesen. Wenn Sie Beanshell verwenden möchten, ohne PostProcessor zu verwenden, können Sie Beanshell Sampler verwenden. Denken Sie immer daran, dass JMeter der Testplanhierarchie folgt!
  2. Sie können Variablen auf verschiedene Arten zurücksetzen. Die einfachste ist wahrscheinlich mit Bohnenschalen, indem sie neu initialisiert werden. Stellen Sie einfach einen Beanshell Sampler am Ende der Schleife und setzen Sie ihn zurück, was Sie wollen.

z.

vars.put("variable1", null); 
vars.put("variable2", ""); 
// or what ever you want... 
+0

Ja Ivan. Vielen Dank! Keiner der Blogs und Beiträge, die ich gesehen habe, weist auf die Wichtigkeit der Testplanhierarchie hin. Ich hatte den gleichen Ansatz gewählt, nachdem ich den gleichen Link durchlaufen hatte. Ich habe vars.remove ("VAR") verwendet; um die Var, die in meinem Fall funktioniert, zurückzusetzen. – Sathya