2017-09-28 4 views
2

Requirement: Post Antwortzeit jedes Samplers Mongo DB, für die erstellt einen HttpClient Java-Code (Class-Funktion).Jmeter: Wie man benutzerdefinierte Java-Funktion zwischen verschiedenen JMX-Datei

Problem: Sie müssen die benutzerdefinierte aufrufen (gleiche Code wiederverwenden zwischen 150+ jmx-Datei) Java-Funktion von Beanshell nach jedem Sampler aufgerufen werden.

void logTransaction(responseTime,samplerName); 

Lösung benötigt: benutzerdefinierte Java-Funktion Integrieren (.c oder .txt) mit JMX-Datei.

Zum Beispiel in Load Runner können wir .h-Datei (im gemeinsamen Pfad freigegeben) mit wiederverwendbarem Code und in globals.h enthalten.

Gibt es eine Methode oder Lösung mit jmeter?

Antwort

1

enter image description here

Code kann durch Speichern in einer Java-Datei wiederverwendet werden und den Dateipfad in JSR223 angeben.

2

Sie können die gleiche Skriptdatei in JSR223 Sampler ausführen, die auch Java-Sprache unterstützt.

Put in Script die Skriptdatei Dateiname und es in verschiedenen JMX-Dateien ausführen

0
  1. In die nächste Zeile zu user.properties Datei (befindet sich im Ordner "bin" Ihrer JMeter Installation)

    beanshell.sampler.init=BeanShellSampler.bshrc 
    
  2. Setzen Sie Ihre logTransaction Funktion in der BeanShellSampler.bshrc Datei (gleiche Stelle, JMeter der Ordner "bin")
  3. Nächstes Mal, wenn Sie JMeter starten Sie von jedem Beanshell Sampler in jedem Skript die Funktion der Lage sein, nennen

Referenzen:

1

Erstellen Sie eine JAR, die Ihren wiederverwendbaren Java-Code enthält, und rufen Sie sie von JSR223 ab. Der Listener prüft "Cache kompiliertes Skript, falls verfügbar".

JSR223 Listener

-Code auf Ihren Anruf unter Verwendung von Standard-Skriptsprache (Groovy):

Verwandte Themen