Ich habe eine Jmeter Thread-Gruppe, die die Variable Uuid mehrmals überall verwendet.Jmeter Zufallsvariable in mehreren Threads
UUID mit 12345678-1234-4444-a123-${__Random(111111111111,999999999999)}
Mit anderen Worten definiert wird, beginnt es mit einer festen Reihe 12345678-1234-4444-a123-
und randomisiert dann die letzten zwölf Zeichen.
Ich möchte mehrere Threads zur gleichen Zeit ausführen, das gibt das folgende Problem: Wenn ich UUID als benutzerdefinierte Variable innerhalb der Thread-Gruppe definieren, wird es einmal zufällig und dann verwendet diesen Wert für alle meine Threads. Wenn ich es global setze, passiert das Gleiche.
Ich werde Tausende von Threads zur gleichen Zeit ausgeführt werden, wenn ich fertig bin, so kann ich keine manuellen Lösungen oder lesen/schreiben auf die Festplatte.
Hat jemand da draußen Erfahrung damit? Ich habe die Dokumentation und Google eine ganze Weile durchgelesen, kann aber keine Lösung finden.
Kurz gesagt: Ich muss eine Variable randomisieren, diese Variable in der gesamten Thread-Gruppe verwenden und diese Thread-Gruppe in mehreren simultanen Threads ausführen. Die Variable sollte unterschiedliche Randomisierungswerte in jedem einzelnen Thread haben.
Brilliant @ Alies Belik ... aber ich verwende einen Loop-Controller und nicht verschiedene Sampler. Der Ablauf ist: 1. Thread-Gruppe 1.1 Schleifenzähler 1.1.1 SOAP-Anfrage Wo platziere ich die Zufallsvariable? –
Sie können auch die Zufallsvariable verwenden, um eine Zeichenfolge aus einer vordefinierten Liste pro Thread (Benutzer) auszuwählen. Ich habe es verwendet, um ein Suchwort für jeden virtuellen Benutzer nach dem Zufallsprinzip auszuwählen. Ich habe eine Variable mit einer durch Kommas getrennten Liste von Schlüsselwörtern erstellt und dann eine Zufallsvariable innerhalb einer Thread-Gruppe mit dem Minimalwert 0 und dem Maximalwert '$ {__ javaScript ('$ {search.keywords}' .split ('\,')) erstellt -1;)} 'und speichere es in Variable keyword.index. Dann, wo ich das zufällig ausgewählte Schlüsselwort verwenden möchte, verwende ich '$ {__ javaScript ('$ {search.keywords}'. Split ('\,') [$ {keyword.index}];)}' – Cvuorinen
Ich habe benutze dies, aber nur mitgeteilt, dass einige Threads immer noch den gleichen Wert erhalten. Ich nehme an, es liegt daran, dass die Threads zur selben Zeit gestartet werden, so dass zufällige Werte zur selben Millisekunde generiert werden, was dazu führt, dass Threads den gleichen Wert bekommen wie zufällige Basen in Millisekunden. Irgendwelche Tipps dazu? –