- 1 Section
- 10 Lessons
- unbegrenzt
Expand all sectionsCollapse all sections
- Testen & Testmanagement10
- 1.1Warum testen? Fehlerkosten und V-Modell
- 1.2Teststufen: Unit, Integration, System, Abnahme
- 1.3Black-Box-Test: Äquivalenzklassen und Grenzwertanalyse
- 1.4White-Box-Test: Zweig- und Pfadüberdeckung
- 1.5TDD: Red-Green-Refactor
- 1.6Unit-Tests schreiben (JUnit / pytest)
- 1.7Mocking und Test-Doubles
- 1.8Testplan, Testprotokoll und Dokumentation
- 1.9Testergebnisse multimedial aufbereiten
- 1.10Aufgaben Testen
Aufgaben Testen
Punkte: 0 / 28
Aufgaben: 0 / 10
Richtig: 0 · Falsch: 0
Zehn IHK-Aufgaben durch alle K52-Themen: Grundlagen, Teststufen, Black-Box, White-Box, TDD, Unit-Tests, Mocks, Doku. Mix MC/Multi-Select/Zuordnung/Reihenfolge/Free-Text. Am Ende eine Note. Viel Erfolg!
Aufgabe 12 Punkte
Begriffskette
Ein Entwickler vergisst eine Nullprüfung. Der entstandene Code stürzt bei bestimmten Eingaben mit NullPointerException ab. Welcher Begriff bezeichnet die beobachtbare Auswirkung nach außen?
Irrtum (Mistake)
Fehler (Defect / Bug)
Fehlerzustand (Fault State)
Fehlerwirkung (Failure)
Richtig. Die Kette: Irrtum (Entwickler vergisst Prüfung) → Fehler (im Code) → Fehlerzustand (NPE im Speicher) → Fehlerwirkung (Absturz beobachtbar). Vgl. L1.
Eselsbrücke: Failure = die Wirkung außen, alles davor ist intern.
Aufgabe 23 Punkte
Teststufen zuordnen
Ordne jede Aktivität der passenden Teststufe zu. Klick zuerst eine Stufe, dann das passende Ziel:
Unit-Test
Integrationstest
Systemtest
Abnahmetest
Entwickler testet einzelne Klasse mit JUnit
QA prüft das komplette System gegen das Pflichtenheft
Kunde prüft, ob die Software seine Bedürfnisse erfüllt
Zwei Module zusammen testen, ob das Zusammenspiel klappt
Auswertung: Unit = einzelne Komponente isoliert, Integration = mehrere zusammen, System = alles gegen Spec, Abnahme = Kunde gegen seine Bedürfnisse (Validierung). Vgl. L2.
Aufgabe 33 Punkte
Äquivalenzklassen bilden
Eine Anwendung akzeptiert ein Alter zwischen 18 und 65 für eine Versicherung. Welche Test-Eingaben deckt ein vollständiger Äquivalenzklassentest + Grenzwertanalyse ab? Wähle alle zutreffenden:
✓
17 – Grenzwert direkt unter Minimum (ungültig)✓
18 – Grenzwert genau am Minimum (gültig)✓
40 – Repräsentant gültige Mittelklasse✓
65 – Grenzwert genau am Maximum (gültig)✓
66 – Grenzwert direkt über Maximum (ungültig)✓
18, 19, 20, 21, 22 – jede Zahl im Bereich einzeln testen
Richtig: 5 Testwerte (17, 18, 40, 65, 66) decken Äquivalenzklassen + Grenzwerte vollständig ab.
Falsch: jede Zahl einzeln testen wäre Zeitverschwendung – das ist genau der Grund für Äquivalenzklassen. Vgl. L3.
Falsch: jede Zahl einzeln testen wäre Zeitverschwendung – das ist genau der Grund für Äquivalenzklassen. Vgl. L3.
Faustregel Grenzwerte: für jede Grenze drei Werte: knapp drunter, drauf, drüber.
Aufgabe 43 Punkte
TDD-Zyklus ordnen
Bring die Schritte eines TDD-Zyklus (Red-Green-Refactor) in die richtige Reihenfolge:
Korrekte Reihenfolge: 1. Test schreiben (für noch nicht existente Funktion) → 2. Test ausführen, schlägt fehl (RED) → 3. Minimalsten Code schreiben, der Test besteht → 4. Test ausführen, geht durch (GREEN) → 5. Code aufräumen / refactoren → 6. Test ausführen, weiterhin grün. Vgl. L5.
Aufgabe 52 Punkte
White-Box: Zweigüberdeckung
Gegeben folgender Code:
if (alter >= 18) {
if (hatAusweis) {
zutritt = true;
}
}
Wie viele Testfälle brauchst du mindestens für 100 % Zweigüberdeckung (C1)?
1 Testfall
3 Testfälle (z.B. alter=17 / alter=20+hatAusweis=true / alter=20+hatAusweis=false)
4 Testfälle für alle möglichen Pfade
2 Testfälle reichen immer für C1
Richtig. Für C1 muss jede Bedingung einmal true und einmal false sein. Hier brauchst du: (a) alter<18 (äußeres if = false), (b) alter≥18 + ohne Ausweis (inneres if = false), (c) alter≥18 + mit Ausweis (inneres if = true). Drei Testfälle. Vgl. L4.
Merke: C1 = jeden Zweig (true und false) abdecken, nicht jeden Pfad.
Aufgabe 62 Punkte
Mock oder Stub?
Du testest eine Klasse, die eine externe Wetter-API aufruft. Du willst sichergehen, dass deine Klasse die API-Methode
getForecast() mit dem richtigen Stadtnamen aufruft. Welches Test-Double brauchst du?Dummy – ein Platzhalter ohne Logik.
Stub – liefert vordefinierte Rückgabewerte.
Mock – kann überprüfen, ob Methoden mit den richtigen Argumenten aufgerufen wurden.
Fake – eine vereinfachte funktionierende Alternative-Implementierung.
Richtig. Mocks verifizieren Verhalten (wurde Methode X mit Argument Y aufgerufen?), Stubs nur Zustand (was kam als Antwort zurück?). Vgl. L7.
Merke: Stub = Daten liefern. Mock = Aufrufe verifizieren.
Aufgabe 73 Punkte
Unit-Test-Aussagen
Welche Aussagen über Unit-Tests sind korrekt? Wähle alle zutreffenden:
✓Sie testen die kleinste isolierbare Einheit, meist eine Methode oder Klasse.
✓Sie folgen dem AAA-Pattern: Arrange, Act, Assert.
✓Sie laufen mit echter Datenbank und echtem Netzwerk.
✓Sie sollten schnell sein (Millisekunden pro Test).
✓JUnit (Java) und pytest (Python) sind verbreitete Frameworks.
✓Sie ersetzen vollständig alle anderen Teststufen.
Richtig: kleinste Einheit, AAA-Pattern, schnell, JUnit/pytest.
Falsch: echte DB/Netzwerk machen Unit-Tests zu Integrationstests. Andere Stufen (Integration, System, Abnahme) sind weiterhin nötig – jede prüft etwas anderes. Vgl. L6.
Falsch: echte DB/Netzwerk machen Unit-Tests zu Integrationstests. Andere Stufen (Integration, System, Abnahme) sind weiterhin nötig – jede prüft etwas anderes. Vgl. L6.
Aufgabe 82 Punkte
Verifikation oder Validierung?
Der Kunde testet die fertige Software gegen seine eigenen Anforderungen und stellt fest, dass das System zwar genau wie spezifiziert funktioniert, aber nicht das macht, was er wirklich braucht. Was ist fehlgeschlagen?
Die Verifikation – das System erfüllt die Spezifikation nicht.
Die Validierung – das System erfüllt die Spezifikation, aber nicht das eigentliche Bedürfnis.
Sowohl Verifikation als auch Validierung.
Weder noch – es ist ein technisches Problem.
Richtig. Verifikation = „Bauen wir das System richtig?" (Spec erfüllt – hier ja). Validierung = „Bauen wir das richtige System?" (Bedürfnis erfüllt – hier nein, also fehlgeschlagen). Klassischer Fall: die Spec war schon falsch. Vgl. L1.
Merke: Verifikation = Spezifikation. Validierung = Validität für Kunden.
Aufgabe 93 Punkte
Testfall-Pflichtfelder
Welche Felder gehören zwingend in einen Testfall nach IEEE 829? Wähle alle zutreffenden:
✓Eindeutige Testfall-ID
✓Voraussetzungen / Vorbedingungen
✓Eingabedaten
✓Erwartetes Ergebnis
✓Lieblings-Programmiersprache des Testers
✓Persönliche Meinung über die Qualität des Features
Pflichtfelder: ID, Voraussetzungen, Eingabe, erwartetes Ergebnis (plus Schritte, tatsächliches Ergebnis nach Lauf). Persönliche Präferenzen sind nicht Teil der Spezifikation. Vgl. L8.
Aufgabe 105 Punkte
Test-Strategie entwerfen
Du entwickelst eine neue Funktion „Passwort vergessen" für eine Web-App: User gibt E-Mail ein → System schickt Mail mit Reset-Link → User klickt Link → kann neues Passwort setzen. Beschreibe in 5–7 Sätzen, wie du diese Funktion testen würdest. Berücksichtige: welche Teststufen nutzt du? Welche Test-Doubles für den Mail-Versand? Welche Black-Box-Fälle? Wie dokumentierst du?
Schreibe deine Antwort frei. Das System prüft, ob die wichtigsten Stichworte vorkommen:
Schreibe deine Antwort frei. Das System prüft, ob die wichtigsten Stichworte vorkommen:
Mögliche Musterlösung: Unit-Tests für die einzelnen Methoden (Token-Generierung, Mail-Templating, Passwort-Hashing). Den Mail-Versand mocke ich – sonst spamme ich beim Testen. Integrationstests für den Gesamtablauf: E-Mail eingeben → Token in DB → Link mit Token → neues Passwort. Black-Box-Fälle: gültige E-Mail, nicht-existente E-Mail (gleiche neutrale Antwort wegen Datenschutz), ungültiges Format, Grenzwerte. Sonderfälle: abgelaufener Token, schon benutzter Token, falsches neues Passwort (zu kurz, etc.). Dokumentation: Testfälle nach IEEE 829, Testprotokoll mit Pass/Fail, Bug-Report bei Fehlern. Vgl. L2, L7, L8.
📊 Auswertung
Punkte
0
Prozent
0%
Note
–
Aufgaben gelöst
0/10
Verwandte Lektionen: L1 · L2 · L3 · L4 · L5 · L6 · L7 · L8 · L9
Nächste Kurse: K53 IDEs & Toolchain baut darauf auf. Für API-Testing speziell siehe K51 L9. Für Qualitäts-Management-Grundlagen K03.
Testergebnisse multimedial aufbereiten
Vorheriges
