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.

Einweichtest

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.

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 kontinuierlich verwendet wird, kann es zu Ausfรคllen oder abnormalem/zufรคlligem Verhalten kommen bzw. abstรผrzen. Um solche Ausfรคlle vorherzusagen, wird ein Soak-Test durchgefรผhrt.

Wann sollte ein Einweichtest durchgefรผhrt werden?

Einweichtests sollten in den folgenden Szenarien durchgefรผhrt werden: โ€“

  1. Bevor die Software auf dem Client bereitgestellt wird, d. h. bevor eine Anwendung auf einer bestimmten Plattform verรถffentlicht wird, muss sie eine Reihe erfolgreicher Belastungstests 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, wenn der Benutzer viele Stunden lang in einem System angemeldet bleibt und eine Reihe von Geschรคftstransaktionen ausfรผhrt. Auf diese Weise werden viele Daten erstellt. Das System/der Datenbankserver kann stark belastet werden, was zu einem 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 Java 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 standardmรครŸige Einweichtestmethode sollte die folgenden Merkmale aufweisen: โ€“

  • 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, das entspricht siebeneinhalb Tagen Aktivitรคt. In diesem Fall kann ein 60- bis 70-stรผndiger Soak-Test bis Freitagabend gegen 6 Uhr gestartet werden, der abgeschlossen werden kann durch 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 Anwendungen usw. beinhalten das Belassen des Spiels oder der Anwendung รผber einen lรคngeren Zeitraum in einem laufenden Zustand, in verschiedenen Betriebsmodi โ€“ wie etwa im Leerlauf, beim Titelbildschirm angehalten usw. โ€“ um herauszufinden, ob eine Anwendung die dauerhaft erwartete Belastung 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.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: