Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
modul:m450:learningunits:lu06:erweitert [2024/12/03 11:08] – angelegt msuter | modul:m450:learningunits:lu06:erweitert [2024/12/16 07:39] (aktuell) – aprobst | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== LU06a - Erweiterte | + | ====== LU06a - Weitere |
+ | |||
+ | ===== Grenzwertanalyse ===== | ||
+ | |||
+ | Bei der Grenzwertanalyse liegt der Fokus auf Werte an den Rändern der Äquivalenzklassen, | ||
+ | Das Ziel ist die Erkennung von Grenzfall-Fehlern, | ||
+ | |||
+ | ==== Anwendung ==== | ||
+ | Systeme mit numerischen oder begrenzten Eingabebereichen. | ||
+ | ==== Beispiel: ==== | ||
+ | Für eine Ganzzahl von 1 bis 100: | ||
+ | * Testfälle: 1 (unterer Rand), 100 (oberer Rand), 0 (unterhalb), | ||
+ | |||
+ | ===== Entscheidungstabellen ===== | ||
+ | Basierend auf den gültigen Äquivalenzklassen stellen wir alle Eingabekombinationen und den daraus resultierenden Aktionen in einer Tabelle dar. Jede Kombination wird als Testfall abgedeckt. | ||
+ | Dies stellt sicher, dass alle möglichen Kombinationen von Eingaben und deren Auswirkungen getestet werden. | ||
+ | ==== Anwendung ==== | ||
+ | Systeme mit mehreren Bedingungen oder Regeln. | ||
+ | ==== Beispiel ==== | ||
+ | Ein Login-System: | ||
+ | * Bedingung 1: Benutzername gültig/ | ||
+ | * Bedingung 2: Passwort gültig/ | ||
+ | * Mögliche Kombinationen: | ||
+ | * Gültig/ | ||
+ | * Gültig/ | ||
+ | |||
+ | ===== Kombinatorisches Testen (Pairwise Testing) ===== | ||
+ | Wir testen alle möglichen Kombinationen von Eingabewerten, | ||
+ | Das Ziel ist die Abdeckung der häufigsten Wechselwirkungen zwischen Eingabeparametern bei reduziertem Aufwand gegenüber den Entscheidungstabellen. | ||
+ | Mehr dazu [[https:// | ||
+ | |||
+ | |||
+ | ==== Anwendung ==== | ||
+ | Systeme mit mehreren Eingabeparametern. | ||
+ | |||
+ | ==== Beispiel ==== | ||
+ | Ein Konfigurationsformular mit Feldern für Land, Sprache, und Währung: | ||
+ | * Testfälle: Jede Kombination von zwei Parametern (z. B. Land/ | ||
+ | |||
+ | ===== Zustandsbasierte Tests ===== | ||
+ | |||
+ | Die Testfälle basieren auf einem Zustandsdiagramm, | ||
+ | Damit stellen wir sicher, dass das System korrekt auf Übergänge zwischen Zuständen reagiert. | ||
+ | |||
+ | ==== Anwendung ==== | ||
+ | Systeme mit mehreren Zuständen, wie z. B. Finite State Machines. | ||
+ | |||
+ | ==== Beispiel ==== | ||
+ | Ein Ticketautomat: | ||
+ | * Zustand: " | ||
+ | |||
+ | ===== Fehlerspekulation ===== | ||
+ | |||
+ | Die Testfälle werden auf Grundlage von Erfahrung und Annahmen über potenzielle Fehler erstellt. | ||
+ | Vor allem erfahrene Testverantwortliche können hier erstaunlich viele Fehler finden. | ||
+ | Damit identifizieren wir häufig vorkommende oder erfahrungsgemäss wahrscheinliche Fehler. | ||
+ | |||
+ | ==== Anwendung ==== | ||
+ | Unstrukturierte oder schlecht dokumentierte Systeme. | ||
+ | |||
+ | ==== Beispiel ==== | ||
+ | Eingabe leerer Felder, ungültiger Sonderzeichen oder sehr grosser Zahlen. | ||
+ | |||
+ | ===== Fehlerbasiertes Testen ===== | ||
+ | Diese Testfälle zielen gezielt auf bekannte Fehlerquellen oder Problemfelder ab. | ||
+ | Dies ermöglicht die Verifizierung, | ||
+ | |||
+ | ==== Anwendung ==== | ||
+ | Regressionstests und nach Fehleranalysen. | ||
+ | ==== Beispiel ==== | ||
+ | Ein System, das in der Vergangenheit Eingabefelder falsch validiert hat: gezielte Tests für diese Felder. | ||
+ | |||
+ | ===== Zusammenfassung der Verfahren ===== | ||
+ | |||
+ | ^ Verfahren ^ Ziel ^ Typische Anwendung ^ | | ||
+ | | Äquivalenzklassen-Analyse | ||
+ | | Grenzwertanalyse | ||
+ | | Entscheidungstabellen | ||
+ | | Zustandsbasierte Tests | Validierung von Zustandsübergängen | ||
+ | | Fehlerspekulation | ||
+ | | Kombinatorisches Testen | ||
+ | | Fehlerbasiertes Testen | ||
+ | |||
+ | Diese Verfahren bieten eine systematische Grundlage, um Testfälle effektiv und effizient zu gestalten und die Qualität des Systems sicherzustellen. | ||
+ | |||
+ | ---- | ||
+ | {{tag> | ||
+ | [[https:// |