2016-05-18 26 views
0

Ich versuche, die Anzahl der Vorkommen einer Antwort in Jmeter zu zählen, und wenn die Anzahl nicht gleich 4 ist, sollte der Test fehlschlagen.Wie kann man die Anzahl der Ereignisse einer Antwortkette in Jmeter ermitteln und den Test nicht bestehen, wenn das Auftreten nicht mit einer Zahl übereinstimmt?

Wie kann ich das tun?

habe ich dies in Beanshell Behauptung:

Import org.apache.commons.lang3.StringUtils; 

int matches = StringUtils.countMatches(new String(data), "itemname"); 
vars.put("ItemNameVar_matchNr", String.valueOf(matches)); 
assert matches == 5; 

Es. funktioniert nicht. Es zeigt Fehler:

Typed variable declaration : Undefined argument: data

Antwort

1
  1. Sie nicht data im Beanshell Assertion verfügen, gibt es eine vordefinierte Variable ResponseData die Byte-Array ist.
  2. Sie haben keine assert in Beanshell, Sie haben Failure vordefinierte boolean, die angibt, ob Sampler im Bereich sollte erfolgreich sein oder nicht.

  3. Voll Code:

    import org.apache.commons.lang3.StringUtils; 
    
    int matches = StringUtils.countMatches(new String(ResponseData), "itemname"); 
    vars.put("ItemNameVar_matchNr", String.valueOf(matches)); 
    Failure = matches != 5; 
    
  4. Referenzen:

+0

Dank! das funktioniert! Gibt es eine Möglichkeit, über jmeter auf E-Mails zuzugreifen? Ich möchte die Sprache der E-Mail überprüfen, die ich bekomme ... – vins

+0

[Mail Reader Sampler] (http://jmeter.apache.org/usermanual/component_reference.html#Mail_Reader_Sampler). [Testen Sie Ihren E-Mail-Server testen: So senden und empfangen Sie E-Mails mit JMeter] (https://www.blazemeter.com/blog/load-testing-your-email-server-how-send-and-receive- E-Mail-jmeter) Artikel für Details. Assertions und PostProcessors können normalerweise auf den Mail Reader Sampler angewendet werden. –

+0

Hallo, ich habe versucht, es zu implementieren. Aber in der Antwort bekomme ich diese http://imgur.com/0FP2p7c wie man die eigentliche Nachricht anstelle von Ordnern bekommt? – vins