2017-05-08 4 views
0

Ich versuche, eine Antwort Nachricht Assertion auf eine Antwort, die Sonderzeichen enthält durchzuführen.Jmeter Antwort Nachricht Assertion mit Sonderzeichen

ich bei dieser Frage sah:

Adding/at the start and end of the asserted string in Response Assertion in JMeter

Aber ich kann immer noch nicht bekommen es die Behauptung übereinstimmen, wenn sie Sonderzeichen enthält. Ich habe versucht, Text Antwort/enthält, Teilzeichenfolge und Antwort Nachricht/enthält, Teilzeichenfolge, aber keine von ihnen übereinstimmen.

zu Test My Muster ist:

„v1.Accounts.Accounts.UpdateAccount konnte aufgrund Validierungsfehler: [Mobilenumber] Das Feld Mobilenumber ein String oder Array-Typ mit einer maximalen Länge von‚20‘sein muss. "

+0

Können Sie bitte Ihre Zusicherung Muster? –

Antwort

0

Per How to Use JMeter Assertions in Three Easy Steps Artikel:

Das Muster kann entweder sein:

  • ein „string“ für „gleich“ oder „Substring“ Klauseln
  • ein „Perl5- Stil "Regulärer Ausdruck für" Enthält "oder" Übereinstimmungs "-Klauseln

Im Falle Substring sollte es ziemlich einfach sein: einfach das ganze "Muster" in das Feld "Muster zu testen" so wie es ist und wenn die Antwort enthält das Muster - die Behauptung wird bestehen.

Im Fall von Enthält JMeter verwendet Perl5Matcher.contains() method unter der Haube so behandelt die "Muster" als regulärer Ausdruck. Deshalb müssen Sie die Sonderzeichen mit dem Backslash entkommen wie:

v1.Accounts.Accounts.UpdateAccount failed due to validation errors:\[MobileNumber\] The field MobileNumber must be a string or array type with a maximum length of '20'. 

Nur für den Fall, wenn es um Perl-Compatible Regular Expressions kommt Ihnen die folgenden Zeichen entkommen müssen:

  • .^$*+?()[{\| Zeichen außerhalb von Zeichenklassen
  • ^-]\ Zeichen innerhalb von Zeichenklassen

Denken Sie auch daran, dass Reguläre Ausdrücke sehr zerbrechlich sind, so dass jeder zusätzliche Platz, neue Zeile, Tabellierung, was auch immer sie brechen wird, wenn obige Empfehlungen nicht helfen, bitte aktualisieren Sie Ihre Frage mit mindestens teilweise (besser voll) Antwort und spezifizieren welchen Teil davon müssen Sie überprüfen, es könnte der Fall sein, es ist viel besser zu gehen für XPath Assertion

+0

Vielen Dank für die Hilfe, es ist eine neue Zeile in der Antwort, die die Probleme verursacht hat. – ChrisG29

Verwandte Themen