Die Durchführung präziser und korrekter Softwaretests folgt zahlreichen Prinzipien. Das International Software Testing Qualifications Board unterscheidet sieben grundlegende, die wir heute besprechen werden. Neugierig, mehr zu erfahren? Lesen Sie einen Artikel über die wichtigsten ISTQB-Testprinzipien!

ISTQB-Testprinzipien – Inhaltsverzeichnis:

  1. Tests decken Mängel auf, können aber deren Abwesenheit nicht beweisen
  2. Gründliches Testen ist unmöglich
  3. Frühes Testen spart Zeit und Geld
  4. Schneeballeffekt bei Fehlfunktionen
  5. Pestizidparadoxon
  6. Es kommt auf den Kontext an
  7. Fehlerfreie Software zu bewerben ist ein No-Go
  8. Zusammenfassung
Sieben wichtige ISTQB-Testprinzipien

Tests decken Mängel auf, können aber deren Abwesenheit nicht beweisen

Tests erhöhen die Wahrscheinlichkeit, Fehler zu finden, was wiederum die Chancen erleichtert, sie zu beheben. Allerdings kann es nicht vollständig garantieren, dass Software frei von allen Mängeln ist, selbst wenn die überwiegende Mehrheit entdeckt und behoben wird. Aufgrund der Unfähigkeit, fehlerfreie Software zu erstellen, betrachten viele den Prozess als negativ by design, da man niemals ein positives Ergebnis erhält und immer etwas „Schmutz“ in den Programmen findet.

Gründliches Testen ist unmöglich

Die oben genannte Faustregel besagt, dass das Erkennen aller Fehlfunktionen von Software vergeblich ist. Dies gilt jedoch nicht für einfache kurze Programme. Dies deutet darauf hin, dass es eine Chance gibt, alle Kombinationen von Eingaben und Vorbedingungen zu sehen, um einige Programme vollständig zu testen. Bei der Bewertung komplexer Software kann selbst die beste KI nicht alle notwendigen Messungen durchführen, geschweige denn manuelle Tester. Automatisierte Prüfer werden Apps effizienter und genauer durchlaufen, aber sie können dennoch keine fehlerfreie Leistung garantieren. Um dies zu tun, müssen Sie zusätzliche Aufgaben wie Priorisierung, Risikoanalyse sowie das Finden und Ausführen anderer Testtechniken in Angriff nehmen.

Frühes Testen spart Zeit und Geld

Viele Fachleute nennen dieses Prinzip auch “Shift Left.” Je früher Sie Mängel erkennen, desto einfacher können Sie sie beheben, daher sollten statisches und dynamisches Testen so früh wie möglich beginnen. Kurz gesagt:

  • Statisches Testen – Bewertung des Produkts ohne Ausführung des Codes.
  • Dynamisches Testen – Bewertung des Codes eines Moduls oder Systems während seiner Ausführung

Fehler in den ersten Phasen der Implementierung zu erkennen, erleichtert die weitere Diagnose. Aber wenn zwei Bereiche der Software interagieren, wird das Beheben von Mängeln problematisch, da es schwierig ist, denjenigen zu identifizieren, der den Fehler hat. In solchen Fällen erfordert es zusätzliche Zeit, Mühe und Arbeitskraft, um damit umzugehen. Alles in allem ist es die schnelle Reaktion auf auftretende Hindernisse, die verhindern kann, dass Risse sich vermehren.

Sieben wichtige ISTQB-Testprinzipien

Schneeballeffekt bei Fehlfunktionen

Die meisten Fehler neigen dazu, sich in den kritischsten Modulen zu konzentrieren, sodass ihre eingehende Untersuchung die meisten aufdeckt und ausreichend beseitigt. Diese Gruppen werden zum Hauptfokus der Durchführung von Risikoanalysen, um die zukünftige Vorgehensweise zu planen und festzulegen. Die Mehrheit der Mängel tritt auf, nachdem die Pfade, die die Benutzer nehmen, verfolgt wurden, aber in diesen Fällen reicht das Wissen allein nicht aus, um die Module als einwandfrei zu betrachten.

Das Pareto-Prinzip besagt, dass 80 % der Ergebnisse nur aus 20 % der Ursachen stammen. Mit anderen Worten, 80 % der Fehler existieren in 20 % der Module. Wenn Sie zahlreiche Fehlfunktionen in einem Modul feststellen, graben Sie weiter, denn sie werden dort sein.

Pestizidparadoxon

Das wiederholte Ausführen derselben Tests kann scheitern, da sie möglicherweise von Anfang an falsch konzipiert wurden und niemals effektiv sein werden. Sie müssen Tests anpassen und aktualisieren, um die Chance zu erhöhen, neue Fehler in der Software zu finden.

Ein völlig neues Diagnosesystem zu erstellen, wird auch nicht helfen. Das Verfolgen der vorherigen Kombinationen kann den Bewertungsprozess auf demselben Niveau stoppen. Dieses Prinzip wird als ‘Pestizidparadoxon’ bezeichnet, da Pestizide, die Schädlinge bekämpfen, nach einer bestimmten Menge an Anwendung ebenfalls an Wirksamkeit verlieren.

Es kommt auf den Kontext an

Die Art und Weise, wie Tests durchgeführt werden, hängt von den untersuchten Objekten ab. So unterscheiden sich Tests eines Buchhaltungsprogramms, eines Videospiels oder einer Social-Media-Anwendung erheblich. Es hängt auch von der Situation ab, zum Beispiel unterscheidet sich eine Analyse, die sich auf die Praktikabilität einer App konzentriert, wie die Überprüfung ihrer Attraktivität für Benutzer, Benutzerfreundlichkeit, visuelle Gestaltung usw., von den Bewertungen, die auf funktionale Eigenschaften des Programms abzielen, z. B. die Durchführung korrekter Berechnungen.

Fehlerfreie Software zu bewerben ist ein No-Go

Die Anwendung verschiedener Arten von Diagnosetools kann keine fehlerfreien Apps garantieren. Viele, die ihre Apps als solche behaupten und bewerben, liegen falsch, wahrscheinlich nur wegen der Marketingbemühungen, die sie unternehmen. Sie können mehrere manuelle und automatisierte Tests durchführen, um die Wahrscheinlichkeit zu erhöhen, so viele Fehler wie möglich aufzudecken und zu beheben, aber dennoch gibt es keine Garantie für perfekte Leistung. In einigen Fällen betreffen die Hindernisse die Betriebssoftware, z. B. erfüllt das Programm möglicherweise nicht alle Benutzererwartungen.

ISTQB-Testprinzipien – Zusammenfassung

So präsentiert ISTQB auf grundlegender Ebene sieben ISTQB-Testprinzipien, die ein Softwaretester befolgen sollte. Zunächst weisen sie auf die Unmöglichkeit einer vollständigen Softwarediagnose hin, daher ist es entscheidend, unter anderem Tests zu modifizieren sowie eine gründliche Suche in den Schlüsselmodulen durchzuführen. Diese Maßnahmen verbessern die Suche und Beseitigung der Mehrheit der Mängel und verringern die Wahrscheinlichkeit von Ausfällen in der Zukunft.

Was ist Softwaretesting? Jetzt wissen Sie die Antwort! Schauen Sie sich unsere anderen Serien über Python und Javascript an!

Wenn Ihnen unsere Inhalte gefallen, treten Sie unserer aktiven Community auf Facebook, Twitter, LinkedIn, Instagram, YouTube, Pinterest.

Robert Whitney

JavaScript-Experte und Dozent, der IT-Abteilungen schult. Sein Hauptziel ist es, die Produktivität des Teams zu steigern, indem er anderen beibringt, wie man effektiv beim Programmieren zusammenarbeitet.

View all posts →