Die Äquivalenzklassen-Analyse ist eine Technik zur Definition von Testfällen. Bei der Äquivalenzklassen-Analyse definieren wir für jede Eingabe die Gruppen von Werten, die vom Programm gleich verarbeitet werden (sollten).
Angenommen wir haben ein Eingabefeld für eine Ganzzahl zwischen 0 und 100.
Anstatt nun jede Zahl von 0 bis 100 und jede Kombination von Buchstaben zu testen, brauchen wir nur je einen Testfall.
Je nach Art der Eingabe benötigen wir unterschiedliche Äquivalenzklassen.
Eingabe | Datentyp | Regeln |
---|---|---|
Vorname | Text | 3-50 Zeichen, Buchstaben und Umlaute |
Geschlecht | Auswahl | M, W oder D |
Alter | Ganzzahl | 0 - 150 |
Grösse in Meter | Dezimalzahl | 0.2 - 2.99 |
Nr | Eingabe | Klasse |
---|---|---|
Gültige Klassen | ||
1 | Vorname | Text mit 3-50 Buchstaben und Umlauten |
2 | Geschlecht | M |
3 | Geschlecht | W |
4 | Geschlecht | D |
5 | Alter | Ganzzahl von 0 bis 150 |
6 | Grösse | Dezimalzahl von 0.2 bis 2.99 |
Ungültige Klassen | ||
7 | Vorname | Text mit 2 Buchstaben oder weniger |
8 | Vorname | Text mit mehr als 50 Buchstaben |
9 | Vorname | Text mit ungültigen Zeichen |
10 | Geschlecht | alle anderen Werte |
11 | Alter | Ganzzahl kleiner 0 |
12 | Alter | Ganzzahl grösser 150 |
13 | Alter | Keine Ganzzahl |
14 | Grösse | Dezimalzahl kleiner 0.2 |
15 | Grösse | Dezimalzahl grösser 2.99 |
16 | Grösse | Keine Zahl |
Aus den Äquivalenzklassen können wir nun die Testfälle ableiten.
Als Eingabewerte wählen wir “typische” Werte die klar innerhalb der Klasse liegen. Die Grenzen der Klassen werden später in separaten Testfällen (Grenzwertanalyse) getestet.
Nr | 1 | |
---|---|---|
Klassen | 1,2,5,6 | |
Eingaben | Vorname | Hanna |
Geschlecht | M | |
Alter | 35 | |
Grösse | 1.35 | |
Nr | 2 | |
Klassen | 1,3,5,6 | |
Eingaben | Vorname | Peter |
Geschlecht | W | |
Alter | 56 | |
Grösse | 0.76 | |
Nr | 3 | |
Klassen | 1,4,5,6 | |
Eingaben | Vorname | Diego |
Geschlecht | D | |
Alter | 15 | |
Grösse | 2.35 | |
Nr | 4 | |
Klassen | 7 | |
Eingaben | Vorname | H |
Geschlecht | M | |
Alter | 14 | |
Grösse | 1.86 | |
Nr | 5 | |
Klassen | 8 | |
Eingaben | Vorname | Anna Maria Davide Juan Marco Julius William Bruce akodfaisdfhaosdihgaoisdgh |
Geschlecht | M | |
Alter | 6 | |
Grösse | 1.33 | |
Nr | 9 | |
Klassen | 9 | |
Eingaben | Vorname | Mar$el |
Geschlecht | D | |
Alter | 19 | |
Grösse | 0.74 | |