Was ist Parallelitätstest?
Concurrency Testing ist eine Testtechnik zum Erkennen von Fehlern in einer Anwendung, wenn mehrere Benutzer angemeldet sind. Mit anderen Worten, Überwachen des Effekts, während mehrere Benutzer dieselbe Aktion gleichzeitig ausführen. Das Bild unten zeigt die gleichzeitigen Tests
Gleichzeitiges Testen wird auch als Mehrbenutzertest bezeichnet . Das Testen eines gleichzeitigen Programms ist aufgrund von Nichtdeterminismus- und Synchronisationsproblemen schwieriger als das Testen eines sequentiellen Programms.
Warum Parallelitätstests?
- Identifiziert die Auswirkungen des gleichzeitigen Zugriffs auf dieselben Datenbankeinträge, Module oder Anwendungscode.
- Identifiziert und misst den Grad des Deadlocks, des Sperren und der Verwendung von Single-Threaded-Code sowie die Einschränkung des Zugriffs auf gemeinsam genutzte Ressourcen
Vorteile des gleichzeitigen Testens
- Der Aufwand für das Testen einer Anwendung wird relativ reduziert, indem der Umfang der gleichzeitigen Interaktionen auf einige weit verbreitete, gut getestete Komponenten beschränkt wird.
- Der Kapselungswert ermöglicht die Analyse des Verhaltens eines Teils eines Programms, ohne den gesamten Code oder das gesamte Programm zu überprüfen
- Es hilft bei der Verbesserung der Zuverlässigkeit und Robustheit gleichzeitiger Programme.
Nachteile des gleichzeitigen Testens
Nachteile, die beim gleichzeitigen Testen beim Testen auftreten können
- Müssen auf mehreren Plattformen testen
- Erfordert intensivere Tests
- Funktionen geben ihr Ergebnis nicht sofort an den Anrufer zurück, sondern können später über Benachrichtigungen, Blöcke, Rückruffunktionen oder ähnliche Mechanismen übermittelt werden, was das Testen erschwert.
- Der Informations- oder Programmfluss wird nicht im Aufrufstapel wiedergegeben.
- Die Anzahl der Ausführungspfade im System kann extrem groß sein, da die Prozesse in einem gleichzeitigen System während der Ausführung miteinander interagieren können
- Gleichzeitige Programme weisen eine höhere Fehlerquote auf als sequentielle
- Debuggen von gleichzeitigen Programmen
Zusammenfassung:
Gleichzeitige oder gleichzeitige Testtechniken werden durchgeführt, um die Fehler in einer Anwendung zu erkennen, wenn mehrere Benutzer angemeldet sind.