Mehrere gängige Lösungen für Stresstests

Parallelität ( Stresstest ) bezieht sich auf die Verarbeitung mehrerer Benutzer, die gleichzeitig versuchen, auf dieselben Daten zuzugreifen. Der Schlüssel zum Problem liegt darin, wie Anwendungen so gestaltet werden, dass sie mit Parallelitätsproblemen umgehen, insbesondere in vielen aktuellen Systemen, in denen mehrere Benutzer gemeinsam zugreifen Ressourcen. Übliche Lösungen sind wie folgt:

  1: Konservative Methode: Dieses Parallelitätsmodell fügt den Daten eine Sperre hinzu. Wenn beispielsweise ein Benutzer in einer Umgebung, in der die Bearbeitung zulässig ist, einen Datensatz in der Datenbank bearbeitet , lehnt das System Anfragen anderer Benutzer zum Lesen von Daten ab. Diese Methode eignet sich am besten für Situationen, in denen mehr als ein Benutzer gleichzeitig dieselben Daten bearbeiten kann, obwohl diese Methode eine gewisse Komplexität in der Implementierung aufweist.

  Beim Testen der Parallelität in diesem Modus geht es in erster Linie darum, zu überprüfen, ob Sperren für einen Datensatz korrekt erworben und freigegeben werden und ob alle Teile der Anwendung, die den Datensatz aktualisieren könnten, ordnungsgemäß verarbeitet werden.

  a: Sperrenerwerb: Da immer nur ein Benutzer gleichzeitig in den Aktualisierungsstatus eines Datensatzes oder Datenelements gelangen kann, ist es wichtig, dass das System die Sperre dem ersten anfragenden Benutzer korrekt zuordnet. Der Vorgang zum Erhalten der Sperre sollte funktionsfähig sein. Die spezifische Methode lautet: Lassen Sie zwei Benutzer gleichzeitig versuchen, in den Bearbeitungsstatus einzutreten, oder verwenden Sie eine große Anzahl von Anforderungen. Für letzteres können wir ein Skript verwenden, um mehrere gleichzeitige Bearbeitungen zu generieren Datenanfragen. Dies wird verwendet, um zu überprüfen, ob nur eine Anfrage erfolgreich war.

  b: Wirksamkeit der Sperre: Um die Gültigkeit der Sperre zu überprüfen, muss sichergestellt werden, dass kein anderer Benutzer die Daten in irgendeiner Weise ändern kann (z. B. Ändern und Löschen). Die spezifische Überprüfungsmethode lautet: Lassen Sie einen Benutzer einen Datensatz öffnen (in den Bearbeitungsmodus wechseln und diesen Status beibehalten), während andere Benutzer versuchen, Daten an allen Stellen in der Anwendung zu aktualisieren, z. B. durch Bearbeiten und Löschen, sollte das System alle Versuche anderer Benutzer, Daten zu aktualisieren, ablehnen.

  c: Sperrfreigabe: muss überprüft werden: Wenn der Benutzer, der die Daten bearbeitet, den Datensatz freigibt, kann das System anderen Benutzern erlauben, den Datensatz zu bearbeiten. Ein weiterer zu beachtender Aspekt ist die Fehlerbehandlung, dh der Benutzer, der die Sperre hält Verwendet den Fehler Welche Art von Vorgang sollte das System im Falle eines Absturzes (z. B. eines Client-Absturzes) ausführen, und die Fähigkeit des Systems, sich nach dem Fehler beim Aufheben der Sperre zu erholen, sollte berücksichtigt werden.

  2: Offener Modus: In diesem Modus darf der Benutzer immer Daten lesen und möglicherweise sogar Daten aktualisieren. Wenn der Benutzer jedoch versucht, die Daten zu speichern, prüft das System automatisch, ob andere Personen die Daten seitdem aktualisiert haben Der Benutzer hat die Daten abgerufen . Wenn sich die Daten geändert haben, schlägt die Aktualisierung fehl. Mit diesem Ansatz können mehr Benutzer die Daten anzeigen als mit dem konservativen Modell. Daher eignet er sich für Situationen, in denen es unwahrscheinlich ist, dass mehrere Personen gleichzeitig dieselben Daten ändern.

  In diesem Modus sind Aktualisierungen der einzige Problempunkt. Die beste Testmethode ist eine Kombination aus manuellen und automatisierten Testtechniken . Beim manuellen Testen bearbeiten zwei Tester die Daten und versuchen dann gleichzeitig, die Daten zu speichern. Ein Benutzer Aktualisiert den Vorgang erfolgreich. Schließlich erhält ein anderer Benutzer die Meldung, dass der Inhalt darin besteht, dass andere Benutzer die Daten aktualisiert haben. Zu diesem Zeitpunkt muss er nur die Daten neu laden und den Änderungsvorgang erneut abschließen. Bei Verwendung der automatischen Massentestmethode kann auf die gleiche Weise nur ein Benutzer den Datensatz aktualisieren, während andere Benutzer dazu aufgefordert werden, da andere Benutzer die Daten bereits aktualisiert haben, sodass sein Vorgang ungültig ist.

  3: Kein Parallelitätsschutz, der einfachste aller Modi. Für Laien liegt der Sieg beim letzten Benutzer, aber wenn zwei Benutzer gleichzeitig einen Datensatz ändern, kann dies zu Datenbeschädigungen führen.

  In diesem Modus sollten alle Benutzer unabhängig von der Reihenfolge der Aktualisierungsanforderungen den Aktualisierungsvorgang erfolgreich abschließen. Besonderes Augenmerk sollte auf die Datenintegrität und Aktualisierungsfehler gelegt werden, z. B.: Wenn ein Benutzer einen Datensatz aktualisiert, wird er tatsächlich gelöscht.

  Achten Sie auch beim Umgang mit Parallelitätstests darauf, dass alle Funktionen getestet werden sollten, die möglicherweise auf diesen Datensatz zugreifen, wenn dieselben Daten über verschiedene Schnittstellen oder Funktionen aktualisiert werden können.

Erweiterte Jmeter-Leistungstestpraxis

Tutorial zum Paketerfassungsartefakt der Fiddler-Schnittstelle

Mobile Testreihe zum Software-Testen

Supongo que te gusta

Origin blog.csdn.net/m0_37449634/article/details/131530760
Recomendado
Clasificación