0

Wir verwenden Jmeter-Maven-Plugin und erstellt ein Maven-Projekt in Eclipse. Meine Testdatei (MainTest.jmx) befindet sich im Ordner src/test/jmeter. In diesem Test verwendeten wir "include controller", um Testfragmente wiederzuverwenden. Diese Fragmente werden in src/test/jmeter/Fragmenten gespeichert. Wir haben versucht, folgenden relativen Pfad in Controller umfassenJmeter enthalten Controller relativen Pfad

  1. ../fragments/FragmentA.jmx

  2. src/test/jmeter/Fragmente/FragmentA.jmx

  3. Versuchte propertiesUser Option in pom. xml

<propertiesUser> 
 
       <fragments.directory>src/test/jmeter/fragments</fragments.directory> 
 
</propertiesUser>

Include-Controller nicht laden .jmx-Datei. Erste folgenden

ERROR o.a.j.c.IncludeController: include Controller 'Include Controller' kann nicht geladen werden '$ {__ P (fragments.directory)}/fragmentA.jmx' - siehe Protokoll für Details.

java.io.IOException: loadIncludedElements -failed für: E: \ Luna \ ADXJmeter \ target \ jmeter \ bin \ $ {__ P (fragments.directory)} \ FragmentA.jmx und E: \ Luna \ ADXJmeter \ target \ jmeter \ Testfiles \ $ {__ P (fragments.directory)} \ FragmentA.jmx

komplette Log

> 2017-05-24 12:14:39,442 INFO o.a.j.c.IncludeController: loadIncludedElements -- try to load included module: E:\Luna\ADXJmeter\target\jmeter\bin\FragmentA.jmx 
 
> 2017-05-24 12:14:39,442 INFO o.a.j.c.IncludeController: loadIncludedElements -failed for: E:\Luna\ADXJmeter\target\jmeter\bin\FragmentA.jmx 
 
> 2017-05-24 12:14:39,442 INFO o.a.j.c.IncludeController: loadIncludedElements -Attempting to read it from: E:\Luna\ADXJmeter\target\jmeter\testFiles\FragmentA.jmx 
 
> 2017-05-24 12:14:39,442 ERROR o.a.j.c.IncludeController: Include Controller 'Include Controller' can't load 'FragmentA.jmx' - see log for details 
 
> 2017-05-24 12:14:39,443 ERROR o.a.j.u.JMeterUtils: Including file "FragmentA.jmx" failed for Include Controller "Include Controller", unexpected error - see log for details 
 
> 2017-05-24 12:14:39,443 WARN o.a.j.c.IncludeController: Including file "FragmentA.jmx" failed for Include Controller "Include Controller", unexpected error 
 
> java.io.IOException: loadIncludedElements -failed for: E:\Luna\ADXJmeter\target\jmeter\bin\FragmentA.jmx and E:\Luna\ADXJmeter\target\jmeter\testFiles\FragmentA.jmx 
 
> \t at org.apache.jmeter.control.IncludeController.loadIncludedElements(IncludeController.java:139) [ApacheJMeter_components-3.2.jar:3.2 r1790748] 
 
> \t at org.apache.jmeter.control.IncludeController.resolveReplacementSubTree(IncludeController.java:111) [ApacheJMeter_components-3.2.jar:3.2 r1790748] 
 
> \t at org.apache.jmeter.JMeter.runNonGui(JMeter.java:936) [ApacheJMeter_core-3.2.jar:3.2 r1790748] 
 
> \t at org.apache.jmeter.JMeter.startNonGui(JMeter.java:910) [ApacheJMeter_core-3.2.jar:3.2 r1790748] 
 
> \t at org.apache.jmeter.JMeter.start(JMeter.java:538) [ApacheJMeter_core-3.2.jar:3.2 r1790748] 
 
> \t at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_121] 
 
> \t at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_121] 
 
> \t at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_121] 
 
> \t at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_121]

Antwort

1

Haben Sie dielesenvor dem Versuch, Controller auf diese Weise zu verwenden?

Dieses Element unterstützt keine Variablen/Funktionen im Feld Dateiname. Wenn jedoch die Eigenschaft includecontroller.prefix definiert ist, wird der Inhalt als Präfix für den Pfadnamen verwendet.

Das gleiche Kapitel enthält den Hinweis: Sie haben includecontroller.prefix Eigenschaft und JMeter versucht, die Datei unter dem Pfad von includecontroller.prefix + Filename

So zu finden, sollten Sie Ihre Konfiguration wie folgt zu ändern:

<propertiesUser>     
    <includecontroller.prefix>src/test/jmeter/fragments</includecontroller.prefix> 
</propertiesUser> 

Und verwenden Sie nur FragmentA.jmx im Controller enthalten.

Weitere Informationen zum Arbeiten mit modularen JMeter-Tests finden Sie unter How to Manage Large JMeter Scripts With JMeter Test Fragments.

+0

Noch versucht es, Datei in Ziel/jmeter/bin Ordner zu finden > 2017-05-24 12: 14: 39,442 INFO oajcIncludeController: loadIncludedElements - versuchen, enthaltenes Modul zu laden: E: \ Luna \ ADXJmeter \ Ziel \ jmeter \ bin \ FragmentA.jmx > 2017-05-24 12: 14: 39,442 INFO oajcIncludeController: loadIncludedElements -failed für: E: \ Luna \ ADXJmeter \ Ziel \ jmeter \ bin \ FragmentA.jmx> 2017-05-24 12: 14: 39.442 Fehler oajcIncludeController: Include Controller 'Include Controller' kann 'FragmentA.jmx' nicht laden - siehe Protokoll für Details – Saagar

+0

Es funktionierte nach dem Hinzufügen der folgenden $ {basedir}/target/jmeter/testFiles/fragments/ in pom.xml – Saagar