2017-05-25 3 views
0

Ich benutze jMeter, um Test-Logging und Abmeldung von meiner Anwendung zu laden. Ich habe eine CSV mit 500 uname und pwords, und ich habe auch die aktiven Threads auf 500 gesetzt.jmeter aktive Threads und csv - ist das Setup korrekt

Ist das der richtige Weg, um eine Last von 500 Benutzern zu stimulieren?

Antwort

1

Aus technischer Sicht - Ja, JMeter wird Anmeldeinformationen von CSV abholen und sie zusammen mit der Anfrage senden.

Wenn Sie jedoch darüber nachdenken, was passiert in der Realität einloggen und sofortiges Abmelden scheint nicht ein realistischer Anwendungsfall für mich. Die ganze Idee der Last eine Web-Anwendung zu testen simuliert echte Benutzer so nah wie möglich, enthält es:

  • Anwendungsnutzungsszenario (s): wie viele Nutzer Ihre Anwendung gleichzeitig zugreifen und was Benutzer werden welche Dinge tun? Zum Beispiel gibt Stack OverFlow an, dass die große Mehrheit der Benutzer nach bestimmten Kriterien nach Antworten sucht, einige Benutzer tippen Fragen, einige von ihnen geben Antworten, und einige von ihnen kommentieren. Diese alle sind unterschiedliche Verhaltensmuster, die genau durch Ihren Belastungstest simuliert werden muß
  • Jeder Benutzer sollte eine „Benutzersitzung“ hat, die er identifiziert, so würde Anwendung verschiedene Benutzer unterscheiden, so stellen Sie sicher, dass HTTP Cookie Manager in Ihrem Testplan
  • Echte Benutzer verwenden echte Browser, die Bilder, CSS- und JavaScript-Dateien mit einem parallelen Thread-Pool herunterladen (etwa 5 gleichzeitige Threads), um den Seitenladeprozess zu beschleunigen. Um dieses Verhalten nachzuahmen, müssen Sie HTTP-Request-Samplers so konfigurieren, dass sie eingebettete Ressourcen herunterladen und parallel ausführen. Sie können diese Konfiguration über HTTP Request Defaults auf alle HTTP-Request-Sampler anwenden.
  • Vergessen Sie nicht, HTTP Cache Manager hinzuzufügen, um Browser-Cache nachzuahmen, da echte Browser normalerweise eingebettete Ressourcen auf die Festplatte zwischenspeichern und sie bei nachfolgenden Aufrufen nicht erneut anfordern.

So würde ich empfehlen, Ihr Testszenario und/oder Lastmuster zu überprüfen und mit How to make JMeter behave more like a real browser Artikeln

+0

Danke Dmitri vertraut machen, ist dies eine großartige Antwort. Sie haben absolut Recht, dass es nicht realistisch ist. Wir verwenden einen Drittanbieter-Identity-Provider und es stellt sich heraus, dass es Probleme gibt. Das Login-Logout soll diese Drittanbieter-App in Siolation testen. – DavidB

+0

In diesem Fall müssen Sie nur sicherstellen, dass Sie alle 500 Benutzer online haben, da Sie möglicherweise in eine Situation geraten, wenn einige Threads diese "login-logout" bereits ausgeführt haben und heruntergefahren wurden und einige noch nicht gestartet wurden. Stellen Sie also sicher, dass Sie genug Iterationen auf der Ebene [Thread Group] (http://jmeter.apache.org/usermanual/component_reference.html#Thread_Group) haben und planen Sie, dass Ihr Test länger als die Hochlaufzeit läuft. Siehe [JMeter-Testergebnisse: Warum die tatsächliche Anzahl der Benutzer niedriger als erwartet ist] (https://www.blazemeter.com/blog/jmeter-test-results-wy-actual-users-number-lower-expected) für Details –

Verwandte Themen