K |
|||
Zeile 3: | Zeile 3: | ||
Anforderungen in Umgangssprache sind jedoch nicht geeignet als Grundlage eines Tests. | Anforderungen in Umgangssprache sind jedoch nicht geeignet als Grundlage eines Tests. | ||
- | ( "Naja, das Ding soll halt nicht abstürzen" oder "Wenn ich da vorne 100 | + | ( "Naja, das Ding soll halt nicht abstürzen" oder "Wenn ich da vorne 100 eingebe, dann soll da hinten irgendwas rauskommen.. " ) |
Zudem ist es nicht möglich komplexe Applikationen präzise zu beschreiben. | Zudem ist es nicht möglich komplexe Applikationen präzise zu beschreiben. | ||
- | Zum Testen von Software ist es also wichtig, die große Komplexität einer Applikation in kleine testbare | + | Zum Testen von Software ist es also wichtig, die große Komplexität einer Applikation in kleine testbare Programmfragmente ( = Funktionen / Prozeduren) aufzuteilen. |
- | Diese | + | Diese Programmfragmente sollten dann EINE Aufgabe erledigen, so daß man dieses Programmfragment testet in dem man beschreibt: |
- | - welches | + | - welches Programmfragment ( Modul, Klasse, Funktion, Sub ) teste ich |
- | - welche Eingabewerte ( Vorbedingungen ) | + | - welche Eingabewerte ( Vorbedingungen ) definiere ich |
- welche Ausgabewerte ( Nachbedingungen ) erwarte ich | - welche Ausgabewerte ( Nachbedingungen ) erwarte ich | ||
Eine Software zu testen bedeutet, festzustellen, ob die Software an sie gestellte Anforderungen auch erfüllt.
Anforderungen in Umgangssprache sind jedoch nicht geeignet als Grundlage eines Tests. ( "Naja, das Ding soll halt nicht abstürzen" oder "Wenn ich da vorne 100 eingebe, dann soll da hinten irgendwas rauskommen.. " )
Zudem ist es nicht möglich komplexe Applikationen präzise zu beschreiben.
Zum Testen von Software ist es also wichtig, die große Komplexität einer Applikation in kleine testbare Programmfragmente ( = Funktionen / Prozeduren) aufzuteilen. Diese Programmfragmente sollten dann EINE Aufgabe erledigen, so daß man dieses Programmfragment testet in dem man beschreibt:
- welches Programmfragment ( Modul, Klasse, Funktion, Sub ) teste ich - welche Eingabewerte ( Vorbedingungen ) definiere ich - welche Ausgabewerte ( Nachbedingungen ) erwarte ich
Unter Umständen wird es also nötig sein den bestehenden Programmcode zu überarbeiten und in kleine testbare Einheiten zu zerlegen.