Softwaretests sind ein elementarer Bestandteil in der Entwicklung und Qualitätssicherung von Software. Doch während die Tests selbst häufig automatisch durchgeführt werden können, müssen die Testfälle händisch entworfen werden.
Testfälle beschreiben ein Szenario, mit dem eine spezifizierte Eigenschaft eines Testobjektes untersucht wird, und darüber hinaus das erwartete Ergebnis
(Bild: mohamed_hassan)
Test Cases (im Deutschen Testfälle) sind der erste Schritt bei Softwaretests und jener, bei dem die menschliche Designarbeit den wichtigsten Einfluss hat. Natürlich gibt es indes viele automatisierte Testverfahren oder Frameworks, doch ein Test kann nur so gut sein wie der gegebene Test Case. Um Funktionalitäten zu prüfen, müssen also zunächst einmal Testfälle erstellt werden, in denen Aktionen oder Bedingungen der Software geprüft werden und auf das erwartete Ergebnis hin untersucht werden.
Unterschieden werden Testfälle in verschiedene Typen, mit denen verschiedene Aspekte gemessen werden. Denn nicht nur in der Entwicklung ist die Qualität der Test Cases entscheidend, auch in der Qualitätssicherung sind gut funktionierende Testfälle ein wichtiges Kriterium für fehlerfrei funktionierende Software.
Definition – was ist ein Testfall?
Testfälle beschreiben ein Szenario, mit dem eine spezifizierte Eigenschaft eines Testobjektes untersucht wird. Das eigentliche Testen selbst wird durch verschiedene Testmethoden durchgeführt, der Testfall hingegen beschreibt vor allem das Umfeld und das erwartete Ergebnis.
Somit liegt der Testfall in der Entwicklung auch nicht rein im Aufgabenbereich der Programmiererinnen und Programmierer, sondern wird eher vom Projektmanagement und der Qualitätssicherung designt bzw. mitentworfen. Wobei dies natürlich in der Praxis abhängig von der Größe des Teams und Projektes ist.
Wie ist ein Test Case aufgebaut und wie wird er geschrieben?
Testfälle orientieren sich an realistischen Szenarien, mit denen eine Software umgehen muss. Diese werden anschließend in verschiedene Testbedingungen übertragen, wobei berücksichtigt wird, dass die Szenarien realistisch und zielgerichtet sein müssen.
Um in der Praxis Test Cases zu schreiben, sollten einige Bedingungen beachtet werden:
ID: Testfälle sollten (einer klaren Nomenklatur folgend) benannt und nummeriert werden.
Beschreibung: eine detaillierte und verständliche Beschreibung des Tests, der Einheit und/oder Funktion.
Vorbedingungen: In den Vorbedingungen wird festgelegt, von welchem Ausgangspunkt aus der Test durchgeführt wird.
Definition: Sowohl das Testobjekt als auch die Spezifikationen müssen für den Testfall klar definiert sein.
Daten: Welcher Input ist für die Durchführung des Tests notwendig und welche Handlungen müssen durchgeführt werden?
Erwartungen: Hier muss definiert werden, welche Erwartungen an die Software gestellt werden, um anschließend beurteilen zu können, wann ein Test passiert und wann gescheitert ist.
Nachbedingungen: Was ist die Folge der Testdurchführung bzw. was würde in der realen Anwendung nach Ausführung der Eingabe geschehen?
Rahmenbedingungen: Hier wird definiert, wie Daten an das Testobjekt übermittelt werden und wie der erwartete Wert abgelesen wird.
Unterscheidung in Positivtests und Negativtests
Semantisch wird zwischen zwei unterschiedlichen Arten von Test Case unterschieden, den positiven und den negativen.
Der Positivtest gehört zu den Standardtests, mit dem ein Testfall in der Praxis durch gültige Vorbedingungen und Eingaben getestet wird. Hiermit kann die Funktionalität eines Testobjektes geprüft werden, wenn die Nutzung wie vorgeschrieben erfolgt.
Negativtests hingegen gelten auch als Robustheitstest. In diesen Testfällen wird ein Objekt getestet, indem die Ausgangslage des Tests und/oder die Eingaben ungültig sind. Dadurch können Entwickler*innen leichter ermitteln, wie robust ihr Testobjekt in unerwarteten Szenarien reagiert.
Unerlässlich sind beide Formen Testfälle.
Weitere Unterscheidung des Test Cases
Da Test Case als Überbegriff für verschiedene Bereiche der Softwareentwicklung und Qualitätssicherung genutzt wird, sollte hier noch weiter unterschieden werden. Schließlich sind die Developer, die auf Funktionalität testen, nicht unbedingt auch immer die besten Kontaktpersonen für Sicherheitstest.
Aus der Formulierung eines Testfalles kann sich genau ableiten, in welcher Stelle der Entwicklung oder Qualitätssicherung dieser eingesetzt wird. An erster Stelle stehen funktionale Test Cases, Unit Test Cases, User Interface Test Cases und Integration Test Cases. Werden diese durchlaufen, sollte festgestellt sein, dass Komponenten und Integration, sowie funktionierende Oberfläche gewährleistet sind.
Es folgen Test Cases für Performance, Security, Database und schließlich Usability. Wird diese Pipeline (größtenteils) befolgt, so können die Tests einen umfänglichen Überblick über eine Software geben – von der Funktion über die Sicherheit bis hin zur Usability.
Test Cases als klar definierte Ebene hinter der Testmethode
Da Entwickler- und Testteams nicht immer identisch sein müssen (und es viele Vorteile bietet, eine Software mit frischem Blick zu betrachten), müssten Testfälle so verständlich formuliert sein, dass auch externe Angestellte der formulierten Logik folgen können. Oftmals entstehen Fehler beim Testen nämlich genau beim Formulieren des Testfalles. So wird beispielsweise ein Case übersehen, der den Programmierenden als logisch erschien. Solche Denkfehler ziehen sich vor allem dann durch die Programmierung, wenn rein intern gearbeitet wird.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Nicht nur Kommunikation zwischen einzelnen Teams sollte bei der Formulierung eines Test Cases im Blickpunkt stehen, sondern auch die Kommunikation zwischen den Designerinnen und Designern der Testfälle sowie der durchführenden Software, wenn Automation gewünscht ist. Ist Automatisierung in der Test-Pipeline angestrebt, sollten die Test Cases daher gleich in den entsprechenden Tools angelegt werden.