2017-04-07 3 views
0

Ich habe eine Bedingung in während Controller: ${__javaScript("${status5}" != "SUCCESS" && parseInt("${counter}") < 5,)} und setzen Sie den Zähler während Controller. Außerdem wurde die Verfolgung des Zählers für jeden Benutzer unabhängig aktiviert und der Zähler für jede Threadgruppeniteration zurückgesetzt.Jmeter: Während Controller-Zähler nicht erlaubt Threads zu beenden, wenn Bedingung nicht erfüllt

Sobald HTTP-Sampler aufgerufen wird, habe ich Beanshell Postprozessor hinzugefügt, um den Antwortwert in einer Datei zu erfassen.

Beim Ausführen von Test für 100 Threads und 10 Iteration, einige der Threads fehlgeschlagen und wiederholt bis zu 5 mal für eine Iteration, aber dann geht es weiter. Sieht so aus, als ob es nur für die erste Iteration prüft und dann nicht in der Lage ist, zur nächsten Iteration überzugehen. Ich sehe keinen Fehler auf der jemter.log oder outofmemory, aber es hängt nur dort.

Können Sie mir bitte helfen, warum Threads nicht voranschreiten? Stimmt etwas in meiner Validierung nicht? oder während Controller?

+0

Können Sie versuchen, nur mit "$ {status5}" und "$ {counter}"? –

Antwort

0

Sie brauchen nicht die parseInt() function here, ist JavaScript so würde ich Ihre Bedingung Zeile wie folgt zu ändern empfehlen Typ Agnostiker:

${__javaScript(("${status5}" != "SUCCESS" && ${counter} < 5),)} 

Siehe Using the While Controller in JMeter in JMeter Tests auf bedingte Looping für weitere Informationen Artikel.

+0

Ich hatte versucht, $ {counter} <5 vor der Verwendung von ParseInt, aber es war Fehler werfen. Ich hatte den gleichen Link für Counter angegeben und es funktionierte nicht. –

Verwandte Themen