Ein Testfall (engl. Test case) beschreibt einen elementaren, funktionalen Softwaretest, der der Überprüfung einer z. B. in einer Spezifikation zugesicherten Eigenschaft eines Testobjektes dient. Testfälle werden unter Anwendung von Testmethoden und geeigneten Software-Hilfsmitteln erstellt.
Wichtige Bestandteile der Beschreibung eines Testfalls sind:
Weichen trotz Einhaltung der Vorbedingungen und trotz korrekter Eingaben/Handlungen in der Testdurchführung die Ausgaben oder Nachbedingungen während der Testdurchführung von den erwarteten Werten ab, so liegt eine Anomalie vor; das kann z. B. ein zu behebender Mangel oder Fehler sein. Diese werden im Rahmen des Fehlermanagements bearbeitet und führen i. d. R. nach Klärung zu Testwiederholungen.
Testfälle lassen sich in Positiv-Testfälle und Negativ-Testfälle unterteilen:
Durch Variation der Eingabewerte und von Parametern der Vorbedingungen lassen sich verschiedene Varianten eines Testfalls überprüfen. TMap unterscheidet hierbei nach logischem Testfall ('Prüfen Eingabewerte') und den dazu auszuführenden konkreten Testfällen (Eingabewert = X oder Y). Hier sind insbesondere die Grenzwerte der Eingabewerte und Parameter von Interesse (siehe Grenzwertanalyse), deren Erreichen oder Überschreiten ein anderes Verhalten des Testobjektes erwarten lässt.
Testfälle nehmen im Verlauf ihrer Bearbeitung unterschiedliche Statusausprägungen an, zum Beispiel (je nach Festlegung im Testprozess): Im Entwurf; zum Testen freigegeben; im Test; Test ok; Test fehlerhaft etc.