Informatik - Testfälle aus einer Vorgabe ableiten
Informatik – Testfälle aus einer Vorgabe ableiten
Einleitung
Wenn Du ein Programm testest, reicht es nicht zu fragen: „Kommt irgendeine Ausgabe?“ Du brauchst vorher eine Vorgabe: eine klare Beschreibung dessen, was bei bestimmten Eingaben geschehen soll. Aus dieser Vorgabe leitest Du Testfälle ab. Ein Testfall enthält mindestens eine konkrete Eingabe und ein erwartetes Ergebnis. Erst danach führst Du das Programm aus und notierst das tatsächlich beobachtete Ergebnis.
Dieser Kurs ist für Lernende ab Klasse 5/6 formuliert. Du arbeitest zunächst mit einfachen Zahlen, Bedingungen und Textausgaben. Die später klar als Vertiefung markierten Abschnitte führen die Fachbegriffe Grenzwertanalyse, Äquivalenzklasse und Black-Box-Test ein. Du brauchst dafür keine bestimmte Programmiersprache.
Der wichtigste Grundsatz lautet:
Vorgabe → Sollwert festlegen → Programm ausführen → Istwert beobachten → vergleichen.
Der Sollwert darf nicht einfach aus dem zu testenden Programm abgeschrieben werden. Sonst könnte ein Fehler im Programm zugleich zum „erwarteten“ Ergebnis werden und dadurch unentdeckt bleiben.
Wichtig: „Test bestanden“ oder „Test fehlgeschlagen“ bewertet hier nur einen einzelnen Testfall. Daraus entsteht keine automatische Schulnote und auch keine automatische Gesamtbewertung eines ganzen Programms.
Lernziele
Nach dem Kurs kannst Du aus einer schriftlichen Vorgabe passende Eingaben auswählen, die erwarteten Textausgaben unabhängig vom Programm bestimmen, beobachtete Ergebnisse dokumentieren und einen Soll-Ist-Vergleich begründen. Außerdem kannst Du erklären, warum besonders Werte an Übergängen wichtig sind und warum einige bestandene Tests noch keinen Beweis dafür liefern, dass ein Programm für alle denkbaren Eingaben richtig arbeitet.
Grundbegriffe
| Begriff | Bedeutung in diesem Kurs | Beispiel |
|---|---|---|
| Vorgabe | Beschreibt das geforderte Verhalten unabhängig vom Programmcode. | „Bei 10 bis 12 Punkten soll Gold ausgegeben werden.“ |
| Eingabe | Ein konkreter Wert, den Du für einen Test verwendest. | 10 |
| Sollwert | Die erwartete Ausgabe, die Du aus der Vorgabe herleitest. | Gold |
| Istwert | Die Ausgabe, die Du beim Ausführen tatsächlich beobachtest. | Silber |
| Bewertung | Vergleich von Sollwert und Istwert für genau diesen Testfall. | Abweichung: Testfall fehlgeschlagen |
| Grenzwert | Ein Wert an oder direkt neben einer Stelle, an der sich das geforderte Verhalten ändert. | 6 und 7 |
Ein Bild zu Bedingungen im Programm
Bedingungen teilen mögliche Eingaben in unterschiedliche Wege. Ein Ablaufdiagramm kann solche Wege sichtbar machen. Das folgende freie Wikimedia-Commons-Bild zeigt beispielhaft Bedingungen in einem Ablaufdiagramm.

Mediennachweis: Dave Braunschweig, „Flowgorithm Conditions.svg“, 17.02.2020, Wikimedia Commons, Lizenz CC BY-SA 4.0. Das Bild dient hier nur zur Veranschaulichung von Verzweigungen; es legt die Regeln unseres eigenen Beispiels nicht fest.
Vom Text zur Testfall-Tabelle
Schritt 1: Die Vorgabe lesen
Unsere erfundene Lernanwendung heißt Punkteanzeige. Sie erhält genau eine ganze Zahl p.
Vorgabe V1: Zulässig sind die ganzen Zahlen von 0 bis 12. Für Werte kleiner als 0 oder größer als 12 lautet die Textausgabe „Eingabe ungültig“. Für 0 bis 6 lautet die Ausgabe „Bronze“. Für 7 bis 9 lautet die Ausgabe „Silber“. Für 10 bis 12 lautet die Ausgabe „Gold“.
Diese Vorgabe ist die Testbasis unseres Beispiels. Sie steht fest, bevor wir das Programm unter Test betrachten.
Schritt 2: Die Vorgabe als eigenes Soll-Modell formulieren
Die folgende Pseudocode-Schreibweise ist bewusst einfach und gehört zu diesem Kurs. Sie ist kein Programm, das wir testen, sondern ein aus der Vorgabe erstelltes Soll-Modell.
SOLL-MODELL PUNKTEANZEIGE EINGABE: ganze Zahl p 1. WENN p < 0 ODER p > 12, DANN AUSGABE "Eingabe ungültig". 2. SONST WENN p >= 10, DANN AUSGABE "Gold". 3. SONST WENN p >= 7, DANN AUSGABE "Silber". 4. SONST AUSGABE "Bronze". ENDE
Beispiele für unabhängig hergeleitete Sollwerte: Für p = 6 gilt nach Regel 4 der Sollwert „Bronze“. Für p = 7 gilt nach Regel 3 der Sollwert „Silber“. Für p = 10 gilt nach Regel 2 der Sollwert „Gold“. Für p = 13 greift Regel 1 und der Sollwert ist „Eingabe ungültig“.
Schritt 3: Gute Testeingaben auswählen
Du musst nicht nur „bequeme“ Zahlen in der Mitte eines Bereichs testen. Besonders aussagekräftig sind Werte an Übergängen. Für V1 sind deshalb zum Beispiel -1, 0, 6, 7, 9, 10, 12, 13 interessant. Sie liegen an oder direkt neben den Grenzen der fünf Verhaltensbereiche: ungültig unter 0, Bronze, Silber, Gold und ungültig über 12.
| Testfall | Eingabe | Herleitung nur aus der Vorgabe | Sollwert |
|---|---|---|---|
| T1 | -1 | kleiner als 0 | Eingabe ungültig |
| T2 | 0 | zwischen 0 und 6 | Bronze |
| T3 | 6 | zwischen 0 und 6 | Bronze |
| T4 | 7 | zwischen 7 und 9 | Silber |
| T5 | 9 | zwischen 7 und 9 | Silber |
| T6 | 10 | zwischen 10 und 12 | Gold |
| T7 | 12 | zwischen 10 und 12 | Gold |
| T8 | 13 | größer als 12 | Eingabe ungültig |
Schritt 4: Erst jetzt das Programm betrachten und ausführen
Angenommen, das zu testende Programm wurde so geschrieben:
PROGRAMM P EINGABE: ganze Zahl p 1. WENN p < 0 ODER p > 12, DANN AUSGABE "Eingabe ungültig". 2. SONST WENN p > 10, DANN AUSGABE "Gold". 3. SONST WENN p >= 7, DANN AUSGABE "Silber". 4. SONST AUSGABE "Bronze". ENDE
Achte darauf: Im Programm P steht in Zeile 2 p > 10. In der Vorgabe beginnt „Gold“ aber schon bei 10. Genau deshalb war es wichtig, den Sollwert vorher unabhängig festzulegen.
Durchgerechnetes Beispiel: Eingabe 10
Beobachtung: Wir geben 10 in Programm P ein. Regel 1 trifft nicht zu. Regel 2 trifft wegen 10 > 10 nicht zu. Regel 3 trifft wegen 10 >= 7 zu. Das Programm gibt „Silber“ aus. Das ist der beobachtete Istwert.
Regelanwendung: Aus Vorgabe V1 hatten wir schon vorher abgeleitet: 10 liegt im Bereich 10 bis 12. Der Sollwert ist deshalb „Gold“.
Bewertung: Sollwert „Gold“ und Istwert „Silber“ stimmen nicht überein. Der Testfall T6 schlägt fehl. Diese Aussage zeigt eine Abweichung für Eingabe 10. Sie beweist noch nicht, warum der Programmierer den Fehler gemacht hat; der sichtbare Pseudocode legt hier allerdings nahe, dass der Vergleich p > 10 statt p >= 10 die Ursache ist.
Ein passender Testfall ohne Abweichung
Beobachtung: Bei Eingabe 11 gibt Programm P „Gold“ aus.
Regelanwendung: Nach Vorgabe V1 liegt 11 im Bereich 10 bis 12. Der Sollwert ist „Gold“.
Bewertung: Sollwert und Istwert stimmen überein. Dieser einzelne Testfall besteht. Daraus folgt aber nicht, dass alle anderen Eingaben korrekt verarbeitet werden.
Beobachtung, Regelanwendung und Bewertung sauber trennen
| Teil | Leitfrage | Beispiel für Eingabe 10 |
|---|---|---|
| Beobachtung | Was habe ich bei der Ausführung tatsächlich gesehen? | Ausgabe „Silber“ |
| Regelanwendung | Was fordert die Vorgabe für diese Eingabe? | 10 gehört zu 10 bis 12, also Sollwert „Gold“ |
| Bewertung | Stimmen Sollwert und Istwert überein? | Nein, der Testfall schlägt fehl. |
Diese Trennung hilft Dir, nicht aus Versehen eine Beobachtung zur Regel zu erklären. Sie ist auch nützlich, wenn mehrere Personen denselben Test nachvollziehen sollen.
Ein einfaches Testfall-Rezept
Sechs Schritte
- Vorgabe markieren: Unterstreiche Eingaben, erlaubte Werte, Bedingungen und geforderte Ausgaben.
- Eingabebereiche bilden: Teile die möglichen Eingaben danach ein, wann sich das erwartete Verhalten ändert.
- Grenzen suchen: Wähle Werte an und direkt neben wichtigen Übergängen.
- Sollwerte zuerst notieren: Leite für jede Eingabe die Erwartung ausschließlich aus der Vorgabe ab.
- Programm ausführen: Notiere das tatsächlich beobachtete Ergebnis ohne es umzudeuten.
- Vergleichen und begründen: Entscheide nur für den Testfall, ob Soll und Ist übereinstimmen.
Warum nicht nur einen Testfall?
Ein einzelner bestandener Test zeigt nur, dass das beobachtete Verhalten für genau diese konkrete Situation zur Erwartung passt. Bei vielen Programmen gibt es sehr viele mögliche Eingaben und Zustände. Deshalb arbeitet Softwaretesten oft mit sinnvoll ausgewählten Stichproben. Das ist etwas anderes als ein mathematischer Beweis, dass ein Programm für alle denkbaren Fälle korrekt ist.
Vertiefung: Grenzwerte und Äquivalenzklassen
Äquivalenzklassen im Beispiel
VERTIEFUNG: Bei einer Äquivalenzklasse fasst man Eingaben zusammen, für die laut Vorgabe dasselbe Verhalten erwartet wird. Für V1 entstehen diese Bereiche:
| Bereich | Erwartete Ausgabe | Beispiel |
|---|---|---|
| p < 0 | Eingabe ungültig | -1 |
| 0 bis 6 | Bronze | 3 |
| 7 bis 9 | Silber | 8 |
| 10 bis 12 | Gold | 11 |
| p > 12 | Eingabe ungültig | 13 |
Ein Wert aus der Mitte eines Bereichs prüft einen typischen Vertreter. Werte direkt an den Übergängen sind zusätzlich wichtig, weil dort Vergleichszeichen wie <, <=, > oder >= leicht verwechselt werden.
Grenzwerte systematisch auswählen
VERTIEFUNG: Für den Übergang Bronze → Silber sind 6 und 7 besonders wichtig. Für Silber → Gold sind 9 und 10 wichtig. Für den gültigen Gesamtbereich sind außerdem -1, 0, 12 und 13 aussagekräftig. Genau der Wert 10 entdeckt in Programm P den eingebauten Fehler.
Ein Testset wie -1, 0, 6, 7, 9, 10, 12, 13 ist deshalb begründeter als acht zufällig gewählte Zahlen aus der Mitte der Bereiche.
Black-Box-Idee
VERTIEFUNG: Beim Black-Box-Test leitest Du Testfälle vor allem aus der äußeren Vorgabe und den sichtbaren Ein- und Ausgaben ab, nicht aus dem inneren Programmcode. Für diesen Kurs ist das besonders wichtig: Der Sollwert kommt aus der Vorgabe. Erst nach der Testdurchführung darf der Code helfen, eine beobachtete Abweichung zu erklären.
Testen als Teil der Softwareentwicklung

Mediennachweis: Perfect Happiness, „Software Testing Life Cycle.jpg“, 08.04.2020, Wikimedia Commons, Lizenz CC BY-SA 4.0. Das Diagramm zeigt einen möglichen sequenziellen Testablauf aus dem professionellen Kontext. Es ist keine verbindliche Reihenfolge für jede Schulaufgabe.
Optionales Vertiefungsvideo
Alternativtext zum Video: Englischsprachige CS50P-Vorlesung zu Unit-Tests. Sie zeigt, wie Programme mit vorbereiteten Erwartungen geprüft werden können und wie Testwerkzeuge Rückmeldungen geben. Für diesen Kurs ist nur die Grundidee wichtig; Python und pytest sind keine Voraussetzung.
Mediennachweis: CS50, „CS50P – Lecture 5 – Unit Tests“, veröffentlicht am 22.07.2022 auf YouTube. In der Videobeschreibung und im CS50-Kurs wird CC BY-NC-SA 4.0 angegeben. Das Video ist englischsprachig und deutlich anspruchsvoller als der Grundkurs; es dient ausschließlich der Vertiefung.
Übungsset mit gestuften Hinweisen und Lösungen
Aufgabe 1: Sollwert aus V1
Für Eingabe 10 sollst Du den Sollwert bestimmen, ohne Programm P zu betrachten.
Auswahl: A) Gold · B) Silber · C) Bronze · D) Eingabe ungültig
Hinweis 1: Suche in V1 den Bereich, der 10 enthält.
Hinweis 2: Der Bereich beginnt genau bei 10.
Lösung: A) Gold. Die Vorgabe ordnet alle Werte von 10 bis 12 der Ausgabe „Gold“ zu. Ob das Programm später etwas anderes ausgibt, ändert den Sollwert nicht.
Aufgabe 2: Neuer Regeltext
Eine andere Anwendung nutzt folgende Vorgabe: Zulässig sind ganze Zahlen von 0 bis 5. Bei 0 lautet die Ausgabe „Stumm“. Bei 1 bis 3 lautet sie „Leise“. Bei 4 bis 5 lautet sie „Laut“. Andere Werte ergeben „Ungültig“. Welche Ausgabe ist für Eingabe 4 zu erwarten?
Auswahl: A) Laut · B) Leise · C) Stumm · D) Ungültig
Hinweis 1: Prüfe, in welchem Zahlenbereich 4 liegt.
Hinweis 2: 4 ist der erste Wert des letzten gültigen Bereichs.
Lösung: A) Laut. Die Erwartung folgt direkt aus dem Regeltext: 4 bis 5 → „Laut“.
Aufgabe 3: Welches Testset prüft Grenzen besser?
Für die Vorgabe „0 bis 6 Bronze, 7 bis 9 Silber, 10 bis 12 Gold“ sollst Du aus vier Vorschlägen den sinnvollsten Grenztest auswählen.
Auswahl: A) 6, 7, 9, 10 · B) 2, 3, 4, 5 · C) 7, 8, 8, 9 · D) 10, 10, 11, 11
Hinweis 1: Verhalten ändert sich zwischen 6 und 7 sowie zwischen 9 und 10.
Hinweis 2: Suche nach einem Set, das beide Seiten beider Übergänge enthält.
Lösung: A) 6, 7, 9, 10. Dieses Set enthält die Werte direkt vor und direkt nach beiden inneren Übergängen.
Aufgabe 4: Beobachtung und Bewertung
Für einen Testfall wurde der Sollwert „Silber“ bereits aus der Vorgabe bestimmt. Bei der Ausführung beobachtest Du „Silber“. Welche Bewertung ist korrekt?
Auswahl: A) Der Testfall besteht · B) Der Testfall schlägt fehl · C) Die Vorgabe ist automatisch falsch · D) Das ganze Programm ist bewiesen korrekt
Hinweis 1: Vergleiche nur Sollwert und Istwert dieses Testfalls.
Hinweis 2: Beide Texte sind gleich.
Lösung: A) Der Testfall besteht. Diese Aussage gilt nur für den geprüften Fall. Sie ist kein Beweis für alle möglichen Eingaben.
Aufgabe 5: Kurzantwort
Neue Vorgabe: Eine Zahl x kleiner als 0 ergibt „Fehler“, 0 bis 2 ergibt „Klein“, 3 bis 5 ergibt „Mittel“, ab 6 ergibt „Groß“. Welcher Sollwert gehört zu x = 3?
Hinweis 1: 3 liegt genau an einem Übergang.
Hinweis 2: Lies, welcher Bereich bei 3 beginnt.
Lösung: Mittel. Der Bereich 3 bis 5 beginnt einschließlich 3.
Transferwerkstatt
Offene Werkstatt: Entwirf selbst eine Vorgabe und Testfälle
Entwirf eine kleine Regelanwendung, die eine ganze Zahl einliest und einen kurzen Text ausgibt. Ein Beispielthema wäre eine Spielanzeige, eine Ampel-Simulation auf Papier oder eine Punkteklasse. Verwende nur erfundene Daten und keine privaten Angaben.
Modell für Deine Arbeit:
NAME DER ANWENDUNG: ______________________ EINGABE: ganze Zahl n VORGABE: 1. WENN ______________________, DANN AUSGABE "______________________". 2. SONST WENN ______________________, DANN AUSGABE "______________________". 3. SONST AUSGABE "______________________". TESTFALL A: Eingabe: ______ Sollwert aus der Vorgabe: ______________________ Beobachteter Istwert: ______________________ Bewertung: ______________________ TESTFALL B: Eingabe: ______ Sollwert aus der Vorgabe: ______________________ Beobachteter Istwert: ______________________ Bewertung: ______________________
Arbeitsauftrag: Formuliere mindestens drei unterschiedliche Ausgabebereiche, nenne den gültigen Zahlenbereich eindeutig, wähle mindestens fünf Testfälle und begründe, warum mindestens zwei davon an Grenzen liegen. Wenn Du kein echtes Programm ausführst, kannst Du die Spalte „Istwert“ zunächst leer lassen oder mit einem von einer Mitschülerin oder einem Mitschüler nach Deinen Regeln simulierten Ergebnis füllen.
Selbstprüfkriterien
- Eindeutige Vorgabe: Kann eine andere Person für jede Deiner Testeingaben genau eine erwartete Ausgabe bestimmen?
- Unabhängiger Sollwert: Hast Du die Erwartung aus Deiner Vorgabe notiert, bevor Du ein Ergebnis des Programms übernimmst?
- Grenzen abgedeckt: Enthält Dein Testset Werte direkt an wichtigen Übergängen und möglichst auch direkt daneben?
- Saubere Trennung: Sind Beobachtung, Regelanwendung und Bewertung getrennt dokumentiert?
- Aussage vorsichtig: Behauptest Du nur, was Deine Testfälle zeigen, und nicht automatisch, dass das ganze Programm fehlerfrei ist?
Quellen, Herkunft, Datum und Aussagegrenzen
Fachliche Quellen
| Quelle | Herkunft und Datum | Für diesen Kurs genutzte Aussage | Aussagegrenze |
|---|---|---|---|
| ISO/IEC/IEEE 29119-1:2022 – General concepts | ISO/IEC/IEEE, Ausgabe 2022; öffentlich einsehbare Begriffsabschnitte; abgerufen am 04.10.2026 | Ein Testfall verbindet Vorbedingungen, Eingaben und erwartete Ergebnisse; ein beobachtetes Ergebnis wird bei der Ausführung erfasst; Grenzwertanalyse richtet Tests auf Bereichsgrenzen. | Internationale Fachnorm für professionelles Softwaretesten, nicht speziell für Klasse 5/6. Der Kurs vereinfacht Begriffe und übernimmt keine kostenpflichtigen Normtexte wörtlich. |
| Bildungsplan Baden-Württemberg – Modellieren und Implementieren | Land Baden-Württemberg, Bildungsplan 2016; abgerufen am 04.10.2026 | Eingabedaten und Ergebnisse können als Testfälle formalisiert und Programme gezielt gegen vorab formulierte Testfälle geprüft werden. | Die zitierte Kompetenzformulierung stammt aus einem weiterführenden Sekundarstufen-Kontext und ist kein Nachweis dafür, dass genau diese Fachbegriffe in Klasse 5/6 verbindlich sind. Hier erfolgt eine didaktische Reduktion. |
| inf-schule – Korrektheit mit Python testen | Öffentliches Informatik-Lernangebot; Seite zuletzt geändert am 01.08.2024; abgerufen am 04.10.2026 | Vorbereitete Testfälle können erwartete Ergebnisse festhalten und anschließend automatisiert mit Programmausgaben verglichen werden. | Das dortige Python- und ggT-Beispiel ist anspruchsvoller als dieser Kurs. Hier wird nur das allgemeine Prinzip übernommen. |
| QS-Baukasten – Abnahmetest | Öffentliches Lernmaterial im Umfeld des Bundesverwaltungsamts/OpenCoDE; kein eindeutiges Veröffentlichungsdatum auf der geprüften Seite, abgerufen am 04.10.2026 | Anforderungen werden analysiert, daraus Testszenarien und Testfälle erstellt, Ergebnisse festgehalten und mit Anforderungen verglichen. | Professioneller Verwaltungskontext; keine Vorgabe für schulische Benotung und keine Garantie, dass ein kleines Testset vollständige Fehlerfreiheit nachweist. |
| Wikipedia – Testfall | Wikipedia, dynamisch bearbeiteter Artikel; abgerufen am 04.10.2026 | Überblick über Vorbedingungen, Eingaben, erwartete Ergebnisse und Soll-Ist-Vergleich bei Testfällen. | Sekundärquelle mit veränderlichem Stand; für verbindliche Fachterminologie wurden zusätzlich ISO-Quellen herangezogen. |
Medienquellen und Lizenzen
| Medium | Quelle | Lizenz | Alternativtext / Nutzung |
|---|---|---|---|
| Flowgorithm Conditions.svg | Wikimedia Commons, Dave Braunschweig, 17.02.2020 | CC BY-SA 4.0 | Ablaufdiagramm mit Bedingungen und Verzweigungen. Es illustriert nur die Idee unterschiedlicher Wege. |
| Software Testing Life Cycle.jpg | Wikimedia Commons, Perfect Happiness, 08.04.2020 | CC BY-SA 4.0 | Diagramm eines sequenziellen Software-Testlebenszyklus. Es dient nur zur Einordnung in der Vertiefung. |
| CS50P – Lecture 5 – Unit Tests | YouTube/CS50, veröffentlicht 22.07.2022; CS50P-Kurslizenz | CC BY-NC-SA 4.0 laut Videobeschreibung und CS50-Kurslizenz | Englischsprachige Vertiefung zu Unit-Tests; Python-Wissen ist für den Grundkurs nicht erforderlich. |
Methodische Aussagegrenze
Testfälle können Fehler sichtbar machen und Vertrauen in geprüftes Verhalten erhöhen. Ein endliches schulisches Testset beweist im Allgemeinen nicht, dass ein nichttriviales Programm für alle möglichen Eingaben und Zustände korrekt ist. Dieser Kurs behandelt vor allem spezifikationsorientiertes Testen einfacher deterministischer Ein- und Ausgaben. Nebenläufigkeit, Zufall, Netzwerke, Sicherheitstests und formale Korrektheitsbeweise werden nicht behandelt.
Interaktive Aufgaben
Quiz: Teste Dein Wissen
Woraus sollst Du den Sollwert für einen Testfall zuerst ableiten? (Aus der Vorgabe) (!Aus der letzten Programmausgabe) (!Aus einer geratenen Zahl) (!Aus der Schulnote)
Welche Ausgabe fordert V1 für die Eingabe 10? (Gold) (!Silber) (!Bronze) (!Eingabe ungültig)
Welche Ausgabe beobachtest Du bei Programm P für die Eingabe 10? (Silber) (!Gold) (!Bronze) (!Eingabe ungültig)
Was ist in einem Test der Istwert? (Das tatsächlich beobachtete Ergebnis) (!Die vorher aus der Vorgabe abgeleitete Erwartung) (!Die Anzahl aller Testfälle) (!Die automatische Schulnote)
Warum sind die Eingaben 6 und 7 gemeinsam interessant? (Sie liegen direkt an einem Verhaltenswechsel) (!Sie sind beide ungültig) (!Sie müssen dieselbe Ausgabe liefern) (!Sie machen weitere Tests überflüssig)
Wann schlägt ein einzelner Testfall fehl? (Wenn Istwert und Sollwert nicht übereinstimmen) (!Wenn die Eingabe eine gerade Zahl ist) (!Wenn mehr als ein Testfall existiert) (!Wenn der Sollwert vor dem Programmstart notiert wurde)
Welche Eingabe ist nach V1 ungültig? (13) (!12) (!10) (!7)
Was darfst Du aus einem bestandenen Testfall sicher schließen? (Für diesen Testfall stimmen Sollwert und Istwert überein) (!Das ganze Programm ist für alle Eingaben bewiesen korrekt) (!Die Vorgabe ist überflüssig) (!Alle Grenzwerte wurden automatisch geprüft)
Welche Reihenfolge ist für diesen Kurs richtig? (Erwartung aus Vorgabe festlegen dann Programm ausführen dann vergleichen) (!Programm ausführen dann dessen Ausgabe als Erwartung übernehmen dann vergleichen) (!Schulnote festlegen dann Eingabe wählen dann Vorgabe schreiben) (!Programmcode abschreiben dann Grenzwerte ignorieren dann Ergebnis raten)
Welche Aussage beschreibt einen Grenzwert am besten? (Ein Wert an oder nahe einer Stelle mit geändertem erwarteten Verhalten) (!Ein zufälliger Wert ohne Bezug zur Vorgabe) (!Immer der größte Wert eines Computers) (!Eine automatisch vergebene Bewertung)
Memory
| Testbasis | Vorgabe für das erwartete Verhalten |
| Eingabe | Konkreter Wert für die Ausführung |
| Sollwert | Vorher abgeleitete Erwartung |
| Istwert | Tatsächlich beobachtetes Ergebnis |
| Grenzwert | Stelle eines Verhaltenswechsels |
| Testfall | Konkrete Prüfung mit Erwartung |
| Abweichung | Unterschied zwischen Soll und Ist |
Drag and Drop
| Ordne die richtigen Begriffe zu. | Thema |
|---|---|
| Vorgabe | Quelle für die Erwartung |
| Sollwert | Vor dem Ausführen festgelegtes Ergebnis |
| Istwert | Bei der Ausführung beobachtetes Ergebnis |
| Bestanden | Erwartung und Beobachtung stimmen überein |
| Fehlgeschlagen | Erwartung und Beobachtung weichen ab |
| Grenzwert | Stelle an der sich das erwartete Verhalten ändert |
Kreuzworträtsel
| Testfall | Wie heißt eine konkrete Prüfung mit Eingabe und Erwartung? |
| Sollwert | Wie heißt das aus der Vorgabe abgeleitete erwartete Ergebnis? |
| Istwert | Wie heißt das tatsächlich beobachtete Ergebnis? |
| Grenzwert | Wie heißt ein Wert an einer Stelle mit möglichem Verhaltenswechsel? |
| Vorgabe | Woraus wird die Erwartung unabhängig vom Programm hergeleitet? |
| Ausgabe | Wie heißt ein vom Programm ausgegebener Text oder Wert? |
LearningApps
Lückentext
Offene Aufgaben
Leicht
- Vorgabe markieren: Nimm die Vorgabe V1 und markiere alle Zahlenbereiche sowie die zugehörigen Textausgaben mit unterschiedlichen Symbolen.
- Sollwerte ableiten: Erstelle für die Eingaben 0, 5, 7, 10 und 12 eine Tabelle mit Sollwerten und schreibe zu jedem Wert einen kurzen Begründungssatz.
- Grenzen finden: Zeichne einen Zahlenstrahl von -1 bis 13 und kennzeichne alle Stellen, an denen sich die erwartete Ausgabe ändert.
- Beobachten und bewerten: Nutze die im Kurs angegebenen Ausgaben von Programm P und schreibe für drei Testfälle jeweils getrennt Beobachtung, Regelanwendung und Bewertung auf.
Standard
- Eigene Regelanwendung: Erfinde eine Anwendung mit einem gültigen Zahlenbereich und mindestens drei unterschiedlichen Textausgaben und formuliere die vollständigen Regeln in der Pseudocode-Notation dieses Kurses.
- Grenzwert-Jagd: Leite zu Deiner eigenen Vorgabe mindestens sechs Testeingaben ab, von denen mindestens vier direkt an oder neben Übergängen liegen, und begründe die Auswahl.
- Partner-Test: Tausche nur Deine Vorgabe und eine simulierte Programmausgabe mit einer Lernpartnerin oder einem Lernpartner aus, nicht Deinen eigenen Sollwert, und vergleicht anschließend Eure unabhängig hergeleiteten Erwartungen.
- Fehlerdetektiv: Verändere in einer Kopie des Soll-Modells genau ein Vergleichszeichen, führe die Grenztestfälle auf Papier durch und dokumentiere, welche Eingabe die Abweichung sichtbar macht.
Schwer
- Entscheidungstabelle bauen: Übertrage eine selbst erfundene Vorgabe mit zwei Bedingungen in eine einfache Tabelle aus Eingabebedingungen und erwarteten Textausgaben und leite daraus konkrete Testfälle ab.
- Kleines Testset begründen: Suche aus zehn möglichen Eingaben ein möglichst kleines, aber gut begründetes Testset aus, das jeden Ausgabebereich und jede Grenze Deiner Vorgabe berücksichtigt.
- Mehrdeutigkeit prüfen: Formuliere absichtlich eine unklare Vorgabe, lasse eine andere Person Sollwerte ableiten, sammle Uneinigkeiten und verbessere anschließend die Formulierung so, dass jede Testeingabe eindeutig entschieden werden kann.
- Mini-Erklärmedium: Erstelle ein eigenes kurzes Schaubild oder Video ohne private Daten, das Vorgabe, Sollwert, Istwert und Bewertung an einem neuen Beispiel erklärt; nutze nur eigene oder eindeutig frei lizenzierte Medien und dokumentiere die Lizenz.


Lernkontrolle
- Mehrdeutige Vorgabe klären: Gegeben ist „Ab 5 gibt es Stufe B, sonst Stufe A“, ohne Angabe für negative Zahlen. Formuliere eine Rückfrage oder Ergänzung, die die Testbasis eindeutig macht, und erkläre, warum Du ohne diese Klärung keinen verlässlichen Sollwert für -1 festlegen kannst.
- Testset vergleichen: Vergleiche die Sets A = 2, 4, 8, 11 und B = 6, 7, 9, 10 für V1. Erkläre, welches Set die inneren Übergänge besser prüft und welche zusätzlichen Werte noch für den gesamten gültigen Bereich fehlen.
- Abweichung analysieren: Für Eingabe 10 lautet der Sollwert „Gold“, beobachtet wird „Silber“. Trenne Deine Antwort ausdrücklich in Beobachtung, Regelanwendung und Bewertung.
- Aussagekraft begrenzen: Erkläre an einem eigenen Beispiel, warum drei bestandene Testfälle noch nicht beweisen, dass alle möglichen Eingaben korrekt verarbeitet werden.
- Sollwert unabhängig halten: Begründe, warum es riskant wäre, zuerst den Programmcode zu lesen und anschließend genau dessen Ausgabe als Erwartung zu notieren.
- Neue Vorgabe übertragen: Entwickle für eine neue dreistufige Zahlenregel mindestens fünf Testfälle, leite alle Sollwerte vor der Ausführung her und begründe mindestens zwei Grenzwerte.
Lernnachweis
Für einen Lernnachweis zu diesem Thema ist wichtig, dass Du eine Vorgabe verständlich lesen und nötigenfalls auf Mehrdeutigkeiten hinweisen kannst. Du solltest Eingaben, Sollwerte und Istwerte unterscheiden, Testfälle mit normalen und grenznahen Werten entwerfen, Sollwerte unabhängig vom zu testenden Programm bestimmen, Beobachtung und Regelanwendung getrennt dokumentieren sowie eine Bewertung aus dem Soll-Ist-Vergleich nachvollziehbar begründen. In der Vertiefung kannst Du zusätzlich Eingaben zu Äquivalenzklassen zusammenfassen und erklären, warum Grenzwerte oft besonders aussagekräftig sind. Der Lernnachweis bewertet diese fachlichen Leistungen durch nachvollziehbare Aufgaben und Begründungen; aus einem einzelnen automatischen Testergebnis folgt keine automatische Note.
OERs zum Thema
Verknüpfte Lernbereiche
Abschlussanwendung auf neues Material
Bibliotheks-Automat: selbst prüfen und anschließend kontrollieren
Zum Abschluss erhältst Du eine neue Vorgabe. Sie gehört nicht zur Punkteanzeige und soll zeigen, ob Du das Verfahren übertragen kannst.
Neue Vorgabe B1: Der Bibliotheks-Automat erhält eine ganze Zahl b für die Anzahl gleichzeitig ausgeliehener Bücher. Für b < 0 oder b > 6 lautet die Ausgabe „Ungültig“. Für b = 0 lautet die Ausgabe „Keine Bücher“. Für 1 <= b <= 4 lautet sie „Ausleihe möglich“. Für 5 <= b <= 6 lautet sie „Limit erreicht“.
Phase A – unabhängig ableiten: Schreibe zuerst für die Eingaben -1, 0, 4, 5, 6, 7 die Sollwerte aus B1 auf. Lies die Beobachtungstabelle erst danach.
Phase B – Beobachtungen eines fiktiven Programms:
| Eingabe | Beobachteter Istwert |
|---|---|
| -1 | Ungültig |
| 0 | Keine Bücher |
| 4 | Limit erreicht |
| 5 | Limit erreicht |
| 6 | Limit erreicht |
| 7 | Ungültig |
Kontrollauftrag: Vergleiche Deine sechs Sollwerte mit den sechs Istwerten. Nenne jeden fehlgeschlagenen Testfall und begründe ihn ausschließlich mit B1.
Kontrolllösung: Genau der Test mit b = 4 schlägt fehl. Nach B1 gehört 4 noch zum Bereich 1 bis 4, deshalb lautet der Sollwert „Ausleihe möglich“. Beobachtet wurde „Limit erreicht“. Bei -1, 0, 5, 6 und 7 stimmen Sollwert und Istwert mit B1 überein. Damit ist die konkrete Anwendung überprüfbar abgeschlossen; sie beweist trotzdem nicht, dass jede andere mögliche Programmsituation korrekt ist.
aiMOOC-Projekte
NEWSLernweltNOAH fragen