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:// | ||