2017-05-28 4 views
0

Ich habe einen Spring Boot Server läuft auf meinem localhost: 8181 und ich kann GET-Anfragen mit Erfolg machen und ich sehe die Protokolle ausgedruckt.JMeter Java API - Lade Test läuft, aber keine Anfragen werden auf dem Server empfangen

Jetzt habe ich einen Proof of Concept für einen Belastungstest gemacht. Ich benutze die JMeter Java API, um Anfragen an den Spring Boot Server mit der Java API von JMeter zu senden. JMeter führt die Testsuite aus und es werden keine Fehler gemeldet aber auf meinem Server habe ich keine eingehenden Anfragen.

Hier ist der Lasttest-Code Ich verwende:

public class Main { 

    public static void main(String... args) { 
     // Engine 
     StandardJMeterEngine jm = new StandardJMeterEngine(); 

     JMeterUtils.setJMeterHome("C:\\Users\\daz\\Desktop\\apache-jmeter-3.2"); 

     // jmeter.properties 
     String jmeterProperties = Main.class.getClassLoader().getResource("jmeter.properties").toString().replace("file:", ""); 
     JMeterUtils.loadJMeterProperties(jmeterProperties); 

     HashTree hashTree = new HashTree(); 

     // HTTP Sampler 
     HTTPSampler httpSampler = new HTTPSampler(); 
     httpSampler.setDomain("localhost"); 
     httpSampler.setPort(8181); 
     httpSampler.setPath("/job/test"); 
     httpSampler.setMethod("GET"); 

     // Loop Controller 
     LoopController loopController = new LoopController(); 
     loopController.setLoops(1); 
     loopController.addTestElement(httpSampler); 
     loopController.setFirst(true); 
     loopController.initialize(); 

     // Thread Group 
     SetupThreadGroup threadGroup = new SetupThreadGroup(); 
     threadGroup.setNumThreads(2); 
     threadGroup.setRampUp(1); 
     threadGroup.setSamplerController(loopController); 

     // Test plan 
     TestPlan testPlan = new TestPlan("MY TEST SUITE"); 

     // Construct Test Plan from previously initialized elements 
     hashTree.add("testPlan", testPlan); 
     hashTree.add("loopController", loopController); 
     hashTree.add("threadGroup", threadGroup); 
     hashTree.add("httpSampler", httpSampler); 

     jm.configure(hashTree); 

     jm.run(); 
    } 
} 

Kann mir jemand helfen vor Ort, was/falsch hier fehlt wie dieser Code nicht die Anforderungen zu machen, wie erwartet?

------------- ------------- EDIT

Mit Summariser ich folgende Ausgabe:

Zusammenfassung = 0 in 0.00.00 = ******/s Durchschnitt: 0 Min: 9223372036854775807 Max: -9223372036854775808 Err: 0 (0,00%)

die ich glaube, bedeuten dass keine Anfragen gemacht wurden, wie ich vermutete.

Antwort

1

Sie Ihren Testplan ein wenig falsch konstruieren, müssen Sie den folgenden Code verwenden:

hashTree.add(testPlan); 
HashTree threadGroupHashTree = hashTree.add(testPlan, threadGroup); 
threadGroupHashTree.add(httpSampler); 

Neben dieser sieht alles mehr oder weniger in Ordnung.

Referenzen:

Sie auch bei jmeter-from-code Demo-Projekt schauen, um zu sehen, wie ein Beispiel Testplan bauen mit JMeter API

Verwandte Themen