7 Prinzipien des Softwaretests mit Beispielen

In diesem Tutorial werden die sieben grundlegenden Softwaretestprinzipien vorgestellt, die jeder Softwaretester und Qualitätssicherungsexperte kennen sollte.

7 Prinzipien des Softwaretests

  1. Tests zeigen das Vorhandensein von Mängeln
  2. Eine umfassende Prüfung ist nicht möglich
  3. Frühes Testen
  4. Defekt clusterIng.
  5. Pestizid paradox
  6. Das Testen ist kontextabhängig
  7. Fehlen von Fehlern, Trugschluss

Lassen Sie uns mit den folgenden Schritten die Testprinzipien erlernenwing Video Beispiel-

Klicken Sie auf Kostenlos erhalten und dann auf Installieren. hier wenn das Video nicht zugänglich ist

Hintergrund

Es ist wichtig, dass Sie beim Softwaretest optimale Testergebnisse erzielen, ohne vom Ziel abzuweichen. Aber wie Sie feststellen, dass Sie Follo sindwing Die richtige Strategie zum Testen? Dazu müssen Sie sich an einige grundlegende Testprinzipien halten. Hier sind die allgemeinen sieben Testprinzipien, die in der Softwarebranche weit verbreitet sind.

Um dies zu verstehen, stellen Sie sich ein Szenario vor, in dem Sie eine Datei von Ordner A in Ordner B verschieben.

Überlegen Sie, wie Sie dies testen können.

Neben den üblichen Szenarien können Sie auch Folgendes testenwing Bedingungen

  • Ich versuche, die Datei zu verschieben, während sie geöffnet ist
  • Sie verfügen nicht über die Sicherheitsrechte, um die Datei in Ordner B einzufügen
  • Ordner B befindet sich auf einem freigegebenen Laufwerk und die Speicherkapazität ist voll.
  • Ordner B enthält bereits eine Datei mit demselben Namen, die Liste ist tatsächlich endlos
  • Oder nehmen Sie an, Sie müssen 15 Eingabefelder testen, von denen jedes 5 mögliche Werte hat. Die Anzahl der zu testenden Kombinationen wäre 5^15

Wenn Sie alle möglichen Kombinationen des Projekts testen würden, würden AUSFÜHRUNGSZEIT UND KOSTEN exponentiell ansteigen. Wir brauchen bestimmte Prinzipien und Strategien, um den Testaufwand zu optimieren

Hier sind die 7 Prinzipien:

1) Eine umfassende Prüfung ist nicht möglich

Ja! Eine umfassende Prüfung ist nicht möglich. Stattdessen benötigen wir den optimalen Testumfang basierend auf der Risikobewertung der Anwendung.

Und die Millionen-Dollar-Frage lautet: Wie ermittelt man dieses Risiko?

Um dies zu beantworten, machen wir eine Übung

Ihrer Meinung nach: Was operation verursacht höchstwahrscheinlich Ihre OperaSystem zum Scheitern verurteilt?

Ich bin sicher, die meisten von Ihnen hätten es erraten: 10 verschiedene Anwendungen gleichzeitig zu öffnen.

Wenn Sie das also testen würden OperaWenn Sie das System testen, werden Sie erkennen, dass Fehler wahrscheinlich bei Multitasking-Aktivitäten auftreten und gründlich getestet werden müssen, was uns zu unserem nächsten Prinzip bringt Defekt ClusterIng.

2) Defekt ClusterIng.

Defekt Clustering, das besagt, dass eine kleine Anzahl von Modulen die meisten festgestellten Mängel aufweist. Dies ist die Anwendung des Pareto-Prinzips auf Softwaretests: Etwa 80 % der Probleme finden sich in 20 % der Module.

Durch Erfahrung können Sie solche riskanten Module identifizieren. Aber dieser Ansatz hat seine eigenen Probleme

Wenn dieselben Tests immer wieder wiederholt werden, werden dieselben Testfälle irgendwann keine neuen Fehler mehr finden.

3) Pestizid-Paradoxon

Der wiederholte Einsatz derselben Pestizidmischung zur Vernichtung von Insekten in der Landwirtschaft führt im Laufe der Zeit dazu, dass die Insekten eine Resistenz gegen das Pestizid entwickeln, wodurch Pestizide bei Insekten unwirksam werden. Gleiches gilt für Softwaretests. Wenn dieselben Wiederholungstests durchgeführt werden, ist die Methode für die Entdeckung neuer Fehler unbrauchbar.

Um dieses Problem zu lösen, müssen die Testfälle regelmäßig überprüft und überarbeitet werden, wobei neue und unterschiedliche Testfälle hinzugefügt werden, um mehr Fehler zu finden.

Tester können sich nicht einfach auf bestehende Testtechniken verlassen. Er muss ständig darauf achten, die bestehenden Methoden zu verbessern, um das Testen effektiver zu machen. Aber selbst nach all dem Schweiß und der harten Arbeit beim Testen können Sie nie behaupten, dass Ihr Produkt fehlerfrei ist. Um diesen Punkt zu verdeutlichen, sehen wir uns dieses Video der öffentlichen Einführung von an Windows 98

Sie denken, ein Unternehmen mag MICROSOFT hätten ihr Betriebssystem nicht gründlich getestet und würden ihren Ruf aufs Spiel setzen, nur um zu sehen, wie ihr Betriebssystem während der öffentlichen Einführung abstürzt!

4) Die Prüfung zeigt das Vorhandensein von Mängeln

Das Testprinzip besagt daher: Beim Testen geht es um das Vorhandensein von Fehlern und nicht um das Fehlen von Fehlern. dh Softwaretest verringert die Wahrscheinlichkeit, dass unentdeckte Mängel in der Software verbleiben, aber selbst wenn keine Mängel festgestellt werden, ist dies kein Beweis für die Korrektheit.

Aber was wäre, wenn Sie besonders hart arbeiten, alle Vorsichtsmaßnahmen treffen und Ihr Softwareprodukt zu 99 % fehlerfrei machen? Und die Software entspricht nicht den Bedürfnissen und Anforderungen der Kunden.

Dies führt uns zu unserem nächsten Prinzip, das besagt: Fehlerfreiheit

5) Fehlen von Fehlern – Trugschluss

Es ist möglich, dass Software, die zu 99 % fehlerfrei ist, dennoch unbrauchbar ist. Dies kann der Fall sein, wenn das System gründlich auf die falsche Anforderung getestet wird. Bei Softwaretests geht es nicht nur darum, Fehler zu finden, sondern auch darum, zu überprüfen, ob die Software den Geschäftsanforderungen entspricht. Das Fehlen von Fehlern ist ein Trugschluss, dh das Finden und Beheben von Fehlern hilft nicht, wenn der Systemaufbau unbrauchbar ist und die Bedürfnisse und Anforderungen des Benutzers nicht erfüllt.

Um dieses Problem zu lösen, lautet das nächste Prinzip des Testens: Frühes Testen

6) Frühes Testen

Frühes Testen – Das Testen sollte so früh wie möglich im Softwareentwicklungslebenszyklus beginnen. Damit eventuelle Mängel in der Anforderungs- oder Designphase frühzeitig erfasst werden. Es ist viel günstiger, einen Fehler in den frühen Testphasen zu beheben. Aber wie früh sollte man mit dem Testen beginnen? Es wird empfohlen, mit der Fehlersuche zu beginnen, sobald die Anforderungen definiert sind. Mehr zu diesem Prinzip in a later Schulungs-Tutorial.

7) Das Testen ist kontextabhängig

Das Testen ist kontextabhängig, was im Grunde bedeutet, dass die Art und Weise, wie Sie eine E-Commerce-Site testen, sich von der Art und Weise unterscheidet, wie Sie eine kommerzielle Standardanwendung testen. Nicht alle entwickelten Softwareprogramme sind identisch. Je nach Anwendungstyp können Sie einen anderen Ansatz, andere Methoden, Techniken und Testarten verwenden. Das Testen eines beliebigen Kassensystems in einem Einzelhandelsgeschäft unterscheidet sich beispielsweise vom Testen eines Geldautomaten.

Mythos: „Prinzipien dienen nur als Referenz. Ich werde sie in der Praxis nicht anwenden.“

Das ist so sehr unwahr. Testprinzipien helfen Ihnen dabei, einen effektiven Test zu erstellen Teststrategie und Entwurf von Testfällen zur Fehlererkennung.

Aber das Erlernen der Testprinzipien ist genauso wie das erste Mal Autofahren zu lernen.

Während Sie das Autofahren lernen, achten Sie zunächst auf alles, zum Beispiel auf die Ausrüstung shifts, Geschwindigkeit, Kupplungshandhabung usw. Aber mit der Erfahrung konzentrierst du dich nur auf das Fahren, der Rest ergibt sich von selbst. So dass Sie sogar Gespräche mit anderen Passagieren im Auto führen können.

Gleiches gilt für Testprinzipien. Erfahrene Tester haben diese Prinzipien so verinnerlicht, dass sie sie auch ohne nachzudenken anwenden. Daher ist der Mythos, dass die Grundsätze in der Praxis nicht angewendet werden, einfach nicht wahr.