Was ist ein Einweichtest? Definition, Bedeutung, Beispiele

Einweichtest

Einweichtest ist eine Art nichtfunktionaler Test, der verwendet wird, um die Leistung einer Softwareanwendung unter großer Last über einen längeren Zeitraum zu messen. Das Ziel des Soak-Tests besteht darin, sicherzustellen, dass die Softwareanwendung einem hohen Nutzungsvolumen standhält, und zu überprüfen, was außerhalb ihrer Designerwartungen passieren würde.

Das Bild unten zeigt einen Testzyklus, der zeigt, in welcher Phase der Einweichtest durchgeführt wird (Art des Leistungstests) wird für eine Anwendung ausgeführt.

Art des Leistungstestbilds

Bei dieser Art von Tests wird grundsätzlich die Speichernutzung durch eine Anwendung in einem System überwacht. Es wird auf Systemebene getestet, um herauszufinden, ob das System einem sehr hohen Nutzungsvolumen standhält und um zu sehen, was außerhalb seiner Designerwartungen passieren würde.

In diesem Tutorial lernen Sie-

Warum Soak-Tests durchführen?

Ein System verhält sich möglicherweise normal, wenn es 2 Stunden lang verwendet wird. Wenn dasselbe System jedoch 10 Stunden oder länger ununterbrochen verwendet wird, kann es ausfallen oder sich ungewöhnlich/zufällig verhalten bzw. abstürzen. Um einen solchen Fehler vorherzusagen, wird ein Soak-Test durchgeführt.

Wann sollte ein Einweichtest durchgeführt werden?

Im Folgenden sollte ein Einweichtest durchgeführt werdenwing Szenarien: –

  1. Bevor das Build auf dem Client bereitgestellt wird, dh vor der Veröffentlichung einer Anwendung auf einer bestimmten Plattform, muss es eine erfolgreiche Reihe von Lasttests bei hohem oder gleichwertigem Datenverkehr durchlaufen. Danach Es wird ein Einweichtest durchgeführt. Es hilft uns zu bestimmen, wie eine bestimmte Anwendung über einen längeren Zeitraum ausgeführt werden soll. Wenn Probleme wie Speicherlecks/Speicherbeschädigung während des Soak-Zeitraums festgestellt werden, sollte dies sofort gemeldet werden.
  2. Der beste Zeitpunkt für einen Einweichtest ist an den Wochenenden, da eine Anwendung über einen Tag oder eine Nacht lang laufen muss. Es hängt völlig von den Einschränkungen der Testsituation ab. Einweichtests gehören zu den wichtigsten Compliance-Anforderungen und müssen von jedem Unternehmen strikt eingehalten werden.

Soak-Teststrategie

Long Session Soak Testing ist eine Strategie, bei der ein System über einen längeren Zeitraum unter Last steht.

Ein einfaches Beispiel ist, dass der Benutzer viele Stunden lang in einem System angemeldet bleibt und eine Reihe von Geschäftstransaktionen ausführt. Auf diese Weise entstehen viele Daten. Der System-/Datenbankserver kann stark ausgelastet sein, was zum Stillstand/Absturz des Systems/Datenbankservers führen kann.

Beim Long Session Soak Testing werden Aktivitäten über mehrere Tage (z. B. 30 Tage) in einem begrenzten Zeitrahmen (z. B. 2 Tage) durchgeführt. Die Anzahl der Transaktionen in diesem begrenzten Zeitrahmen sollte dem Transaktionswert von mehreren Tagen entsprechen oder diesen übersteigen. Der Fokus sollte auf der Anzahl der verarbeiteten Transaktionen liegen. Der wichtigste Teil des Soak-Tests besteht darin, den verfügbaren Speicher in der CPU und die Speichermenge zu überprüfen, die verwendet wird. Wir müssen die Speichernutzung zu Beginn und am Ende eines Einweichtests aufzeichnen. Bei Bedarf kann dann die Speichernutzung von Einrichtungen wie z Javac Virtuelle Maschinen sind ebenfalls wichtig und müssen überwacht werden.

Im Folgenden finden Sie einige weitere Prüfungen, die jeder Benutzer/Tester durchführen muss, bevor er mit dem Einweichtest beginnt:

a) Überwachen Sie den Ressourcenverbrauch der Datenbank.

b) Überwachen Sie den Ressourcenverbrauch des Servers (z. B. CPU-Auslastung).

c) Der Soak-Test sollte mit realistischer Benutzer-Parallelität laufen.

Merkmale des Einweichtests

Eine Standard-Einweichtestmethode sollte Folgendes haben:wing Eigenschaften: -

  • Die Dauer der meisten Einweichtests wird oft durch die verfügbare Zeit bestimmt.
  • Jede Anwendung muss ohne Unterbrechung laufen, wenn sie einen längeren Zeitraum erfordert.
  • Es sollte alle von den Stakeholdern vereinbarten Szenarien abdecken.
  • Fast jedes System verfügt über einen regelmäßigen Wartungsfensterzeitraum und die Zeit zwischen diesen Fensterperioden ist ein wichtiger Faktor für die Bestimmung des Umfangs eines Soak-Tests.

BEISPIELE für Einweichtests

  • Im Falle einer Banking-Domain, bei der große Datenmengen von Händlern vorliegen, setzt der Tester das System 70 bis 150 Stunden lang kontinuierlich unter Last, um zu überprüfen, wie sich die Anwendung während dieser Ladezeit verhält.
  • Angenommen, es gibt 33,000 Anmeldungen, die durch das System geleitet werden müssen, was einer Aktivität von siebeneinhalb Tagen entspricht. In diesem Fall kann bis Freitagabend gegen 60:70 Uhr mit einem 6- bis XNUMX-stündigen Einweichtest begonnen werden, der bis spätestens XNUMX:XNUMX Uhr abgeschlossen sein kann Monday Morgen um 6 Uhr. Nur mit einem solchen Test ist es möglich, unter den kontrollierten Bedingungen einen Leistungsabfall zu beobachten.
  • Im Fall von Videospielen Mobil Bei Anwendungen usw. geht es darum, das Spiel oder die Anwendung über einen längeren Zeitraum hinweg in verschiedenen Betriebsmodi laufen zu lassen, z. B. im Leerlauf, beim Anhalten des Titelbildschirms usw., um herauszufinden, ob eine Anwendung die kontinuierlich erwartete Last bewältigen kann .

Häufige Probleme, die beim Einweichtest beobachtet werden

  1. Speicherzuweisung (Speicherlecks, die schließlich zu einer Speicherkrise oder Rundungsfehlern führen würden, die sich erst im Laufe der Zeit manifestieren).
  2. Auslastung der Datenbankressourcen (Fehler beim Schließen der Datenbankcursor unter bestimmten Bedingungen, was schließlich zum Stillstand des gesamten Systems führen würde).
  3. Dies kann auch zu Leistungseinbußen führen, d. h. dazu, dass die Reaktionszeit nach einem längeren Zeitraum anhaltender Aktivität genauso gut ist wie zu Beginn des Tests.
  4. Unter bestimmten Umständen können Verbindungen zwischen Ebenen eines mehrschichtigen Systems nicht geschlossen werden, wodurch einige oder alle Module des Systems zum Stillstand kommen könnten.
  5. Die allmähliche Verschlechterung der Reaktionszeit einiger Funktionen, da interne Datenstrukturen während eines langen Tests weniger effizient werden.

Zusammenfassung

  • In Software Engineering, Einweichtests werden durchgeführt, um festzustellen, ob die zu testende Anwendung der Dauerbelastung standhalten kann.
  • Es handelt sich um eine Art Leistungstest.
  • Dadurch kann das System feststellen, ob es einem sehr hohen Nutzungsvolumen standhält
  • Bei dieser Art von Tests wird grundsätzlich die Speichernutzung durch eine Anwendung in einem System überwacht
  • Zu den Prüfungen, die von jedem Benutzer/Tester durchgeführt werden müssen, bevor er mit dem Einweichtest beginnt, gehören:
  • Überwachen Sie den Ressourcenverbrauch der Datenbank.
  • Überwachen Sie den Ressourcenverbrauch des Servers (z. B. CPU-Auslastung).
  • Der Soak-Test sollte mit realistischer Benutzergleichzeitigkeit ausgeführt werden.