2016-09-05 5 views
0

Ich möchte einen Wert (ActualCode) in XPath Assertions bestätigen. Ich bin erfahren mit JSON Path Assertion, aber völlig neu in XML One. Wie könnte ich hier den 'ActualCode'-Wert angeben?XML Pfad Zusicherung in Jmeter

<?xml version="1.0" encoding="UTF-8"?> 
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> 
<S:Body> 
    <ns2:CreateValidCode xmlns:ns2="http://www.example.net/lmsglobal/ws/v1/extint/types" xmlns="http://www.example.net/lmsglobal/xsd/v1/types" xmlns:ns3="http://www.example.net/lmsglobal/ws/v1/extint/notification/types"> 
    <ns2:ValidCode>ActualCode</ns2:ValidCode> 
    <ns2:State>1</ns2:State> 
    </ns2:CreateValidCode> 

Antwort

1
  1. erstellen .properties Datei, das heißt namespaces.properties irgendwo, zum Beispiel in JMeter.s Ordner "bin".
  2. Fügen Sie die folgenden Zeilen zu den namespaces.properties Datei

    S=http://schemas.xmlsoap.org/soap/envelope/ 
    ns2=http://www.example.net/lmsglobal/ws/v1/extint/types 
    
  3. die nächste Zeile In den user.properties Datei, es lebt unter JMeter "bin" -Ordner sowie

    xpath.namespace.config=namespaces.properties 
    
  4. Starten Sie JMeter neu, um die Eigenschaft auszuwählen
  5. Fügen Sie XPath Assertion als Kind der Anforderung w hinzu hich Erträge über XML
  6. Tick Use Namespaces Box
  7. Setzen Sie die folgende Abfrage in den "XPath Assertion" -Eingang:

    //ns2:ValidCode/text()='ActualCode' 
    

, dass es sein sollte.

brauchbares Material:

Demo:

XPath Namespaces Demo

+0

Danke! Eine kleine Frage. Wie kann ich das Ergebnis mit einer Variablen vergleichen? Ich habe verschiedene Möglichkeiten wie // ns2 versucht: ValidCode/text() = $ .Code aber es scheint nicht zu funktionieren. – Mori

+0

Bereits herausgefunden! // ns2: ValidCode/text() = '$ {Code}' ist der richtige Weg! – Mori

Verwandte Themen