Ich habe einen Webcrawler entwickelt, der Apache-JMeter verwendet.
Ich habe einen Aufnahmesteuerer erstellt, um die Anfrage / Antwort als jmx
tree aufzuzeichnen.
Um jmx aufzunehmen, habe ich zwei Möglichkeiten: entweder ich integriere JMeter API in meinen Code oder benutze JMeter GUI, ich wähle beides zum Testen. Also führe ich den apache-jmeter aus Code und GUI aus, um die Anfrage / Antwort Seite an Seite aufzuzeichnen. Nachfolgend sind die jmx-Ergebnisse von Code-Base-JMeter und GUI-Base-JMeter für eine Anfrage aufgeführt.
Code-Base-JMeter
%Vor%GUI-Basis-JMeter
%Vor%Unterschiede zwischen den Aufnahmen
1) HTTPSamplerProxy
tree endet vor dem header Abschnitt in der GUI-Base-JMeter-Rekodierung, während HTTPSamplerProxy
tree zuletzt von Code-Base-JMeter
2) HeaderManager
ist ein Tag in GUI-Base-JMeter, während in Code-Base-JMeter sein Eigenschaftswert von elementProp
-Tag ist.
3) HeaderManager
ist Geschwister von HTTPSamplerProxy
in GUI-Base-JMeter, während elementProp
tag (von HeaderManager
Eigenschaftswert) Kind von HTTPSamplerProxy
ist.
Grundsätzlich ist das gesamte Layout in beiden Aufnahmen unterschiedlich. Ich möchte Code-Base-JMeter Aufnahme wie GUI-Base-JMeter-Aufnahme.
Ich verwende Apache-JMeter 3.2 (sowohl für GUI als auch für Code)
Unten ist der Code
Initialisieren
%Vor%Starten Sie JMeter
%Vor%JMeter stoppen / aufzeichnen
%Vor%Warnung : Dies ist keine legitime Lösung / Antwort, es ist nur ein Workaround, da mir noch niemand eine Lösung anbietet.
Ich mache einen xslt-Ausdruck, um Code-Base-JMeter-Jmx zu Gui-Base-JMeter-Jmx
zu transformieren %Vor%Was nun, wenn sie in der nächsten Version von JMeter die Ausgabe von jmx / xml ändern, dann muss ich wieder mein xslt ändern, um die Änderung zu berücksichtigen, was überhaupt kein guter Weg ist.
Ich bin also immer noch hungrig nach einer legitimen Lösung.