what is reliability testing
Was ist Zuverlässigkeitstest?
c Fragen und Antworten zu Programmierinterviews pdf
Zuverlässigkeit ist definiert als die Wahrscheinlichkeit eines fehlerfreien Softwarebetriebs für einen bestimmten Zeitraum in einer bestimmten Umgebung.
Zuverlässigkeitstests werden durchgeführt, um sicherzustellen, dass die Software zuverlässig ist, den Zweck erfüllt, für den sie erstellt wurde, für einen bestimmten Zeitraum in einer bestimmten Umgebung und in der Lage ist, einen fehlerfreien Betrieb zu gewährleisten.
In dieser mechanisierten Welt glauben die Menschen heutzutage blind an jede Software. Unabhängig davon, welches Ergebnis das Softwaresystem zeigt, folgen die Leute dem Glauben, dass die Software immer korrekt sein wird. In der Tat ist das ein häufiger Fehler, den wir alle machen.
Benutzer denken, dass die angezeigten Daten korrekt sind und die Software immer korrekt funktioniert. Hier kommt die Notwendigkeit von Zuverlässigkeitstests ins Spiel.
Laut ANSI ist Software-Zuverlässigkeit definiert als die Wahrscheinlichkeit eines fehlerfreien Software-Betriebs für einen bestimmten Zeitraum in einer bestimmten Umgebung.
Wenn ein Softwareprodukt für einen bestimmten Zeitraum in einer bestimmten Umgebung fehlerfrei arbeitet, spricht man von zuverlässiger Software.
Durch die Zuverlässigkeit der Software werden Fehler während der Softwareentwicklung reduziert. Bei elektronischen Geräten oder mechanischen Instrumenten kann die Software keinen 'Verschleiß' aufweisen. Hier tritt 'Verschleiß' nur aufgrund von 'Defekten' oder 'Fehlern' im Softwaresystem auf.
Empfohlenes Lesen => Tipps und Tricks, um einen Fehler zu finden
Was du lernen wirst:
- Was ist Zuverlässigkeitstest?
Was ist Zuverlässigkeitstest?
In der heutigen Welt werden Softwareanwendungen in jedem Aspekt unseres Lebens eingesetzt, einschließlich Gesundheitswesen, Regierungssektoren, Telekommunikation usw.
Daher benötigen wir genaue Daten, auf die sich die Benutzer verlassen können. Zuverlässigkeitstests befassen sich mit der Qualität der Software und der Standardisierung von Produkten. Wenn wir in der Lage sind, die Testfälle zu wiederholen und konstant die gleiche Leistung erhalten, wird das Produkt als „zuverlässig“ bezeichnet.
Zuverlässigkeitstests werden durchgeführt, um sicherzustellen, dass die Software zuverlässig ist, den Zweck erfüllt, für den sie erstellt wurde, für einen bestimmten Zeitraum in einer bestimmten Umgebung und in der Lage ist, einen fehlerfreien Betrieb zu gewährleisten.
Wann verwenden wir Zuverlässigkeitstests?
Im Folgenden sind die Szenarien aufgeführt, in denen wir diese Tests verwenden:
- Um die im System vorhandenen Fehler und den Grund dafür zu finden.
- Um die Qualität des Systems sicherzustellen.
Testfälle sollten so gestaltet sein, dass sie die vollständige Abdeckung der Software gewährleisten. Die Testfälle sollten in regelmäßigen Abständen ausgeführt werden, damit wir das aktuelle Ergebnis und das vorherige Ergebnis überprüfen und prüfen können, ob zwischen ihnen ein Unterschied besteht. Wenn das gleiche oder ein ähnliches Ergebnis angezeigt wird, kann die Software als zuverlässig angesehen werden.
Außerdem können wir die Zuverlässigkeit testen, indem wir die Testfälle für einen bestimmten Zeitraum ausführen und prüfen, ob das Ergebnis nach diesem bestimmten Zeitraum ohne Fehler korrekt angezeigt wird. Während des Zuverlässigkeitstests müssen wir die Umgebungsbedingungen wie Speicherverlust, schwache Batterie, schwaches Netzwerk, Datenbankfehler usw. überprüfen.
Grundlegende Typen zur Beurteilung der Zuverlässigkeit von Software
Nachfolgend sind einige grundlegende Typen aufgeführt, um die Zuverlässigkeit der Software zu beurteilen.
1) Test-Retest-Zuverlässigkeit
Stellen Sie sich die folgende Situation vor, in der wir eine Funktionalität testen: Sagen wir um 9:30 Uhr und testen Sie dieselbe Funktionalität erneut um 13:00 Uhr. Später vergleichen wir beide Ergebnisse. Wir bekommen eine hohe Korrelation in den Ergebnissen. Dann können wir sagen, dass der Test „zuverlässig“ ist. Normalerweise bedeutet eine Zuverlässigkeit von 0,8 oder mehr, dass das System als hochzuverlässiges Produkt angesehen werden kann.
Hierbei ist es sehr wichtig zu beachten, dass die Länge des Tests gleich bleibt, wenn wir 10 Schritte in einem Testfall haben, dann bleibt die Anzahl der Schritte für die nächste Durchführung des Tests gleich.
Betrachten Sie das Besondere Beispiel einer Person, die an einem „IQ-Test“ teilnimmt und 144 Punkte erzielt. Nach 6 Monaten macht er den gleichen „IQ-Test“ und erhält 68 Punkte. In einem solchen Fall kann er nicht als „zuverlässige“ Quelle angesehen werden.
2) Parallele oder alternative Form der Zuverlässigkeit
Dies wird so genannt, da die Tester den Test in zwei Formen gleichzeitig durchführen.
3) Interrater-Zuverlässigkeit
Die Zuverlässigkeit zwischen Bewertern wird auch als Zuverlässigkeit zwischen Beobachtern oder Intercodierern bezeichnet. Es ist eine besondere Art der Zuverlässigkeit, die aus mehreren Bewertern oder Richtern besteht. Es befasst sich mit der Konsistenz der von verschiedenen Bewertern / Beobachtern vorgebrachten Bewertung.
Zum Beispiel , Stellen Sie sich einen Teilnehmer vor, der an einem Gesangswettbewerb teilnimmt und 9,8,9 (von 10) Punkten von mehreren Richtern erhält. Diese Punktzahl kann als „zuverlässig“ angesehen werden, da sie ziemlich konsistent ist. Wenn er jedoch 9,3,7 (von 10) erzielt hat, kann dies nicht als „zuverlässig“ angesehen werden.
Hinweis: Diese Bewertungen hängen stark von der allgemeinen Übereinstimmung zwischen den verschiedenen Richtern / Bewertern ab. Sobald Sie eine Reihe von Beobachtungen durchgeführt haben, können Sie entscheiden, dass die Punktzahlen eine Art Stabilität aufweisen, und nach diesem Zeitraum können wir sagen, dass sie konsistent sind.
Somit ist die Bewertungsstabilität eine Messung über mehrere Beobachter hinweg. Es ist sehr wichtig anzumerken, dass die Fähigkeiten des Beobachters auch eine wichtige Rolle bei der Erörterung der Interrater-Zuverlässigkeit spielen. Um die Zuverlässigkeit zwischen den Bewertern zu verbessern, benötigen die Bewerter eine Schulung oder eine angemessene Anleitung.
Betrachten Sie die obige Excel-Tabelle und sehen Sie sich die Bewertungen an, die von zwei verschiedenen Bewertern Rater1 und Rater2 für 12 verschiedene Elemente abgegeben wurden. Rater1 hat unabhängig auf der Anzeigetafel bewertet. Hier berechnen wir nun anhand der Anzeigetafel den Prozentsatz der Übereinstimmung zwischen den beiden Bewertern. Dies wird als Interrater-Zuverlässigkeit oder Interrater-Vereinbarung zwischen den beiden Bewertern bezeichnet.
In der dritten Spalte setzen wir '1', wenn die von den Bewertern abgegebenen Bewertungen übereinstimmen. Wir geben '0', wenn die Ergebnisse übereinstimmen. Danach finden wir die Zahlen '1' und '0' in der Spalte. Hier ist es 8.
Anzahl von '1' = 8
Gesamtzahl der Artikel = 12
Prozentsatz der Übereinstimmung = (8/12) * 100 = 67%. 67% sind nicht so sehr. Die Bewerter müssen mehr Übereinstimmung haben, damit sie das Ergebnis entsprechend diskutieren und verbessern können.
Verschiedene Arten von Zuverlässigkeitstests
Die verschiedenen Arten von Zuverlässigkeitstests werden nachstehend als Referenz erläutert:
1) Funktionstests:
Dieser Test bestimmt die Eignung, d. H. Er testet, ob die Anwendung für ihre eingerückte Verwendung die erwartete Leistung erbringt. Hier wird die Interoperabilität einer Anwendung überprüft, um sie mit den anderen Komponenten und dem System zu testen, das mit der Anwendung interagiert.
Es stellt die Genauigkeit des Systems sicher, um zu überprüfen, ob währenddessen keine Fehler gefunden wurden Beta-test .
Abgesehen davon testet es eine Art von Sicherheit und Compliance. Sicherheitstests bezieht sich auf die Verhinderung des absichtlichen oder unbeabsichtigten unbefugten Zugriffs auf die Anwendung. In Übereinstimmung damit prüfen wir, ob die Anwendung bestimmten Kriterien wie Standard, Regeln usw. entspricht.
2) Lastprüfung
Lasttest prüft, wie gut das System im Vergleich zum Wettbewerbssystem oder zur Leistung abschneidet. Es basiert auch auf der Anzahl der gleichzeitigen Benutzer, die das System verwenden, und dem Verhalten des Systems gegenüber den Benutzern.
Das System muss auf die Benutzerbefehle mit einer kürzeren Antwortzeit (z. B. 5 Sekunden) reagieren und die Benutzererwartungen erfüllen.
3) Regressionstests
Im Regressionstests Wir werden prüfen, ob das System eine gute Leistung erbringt und keine Fehler aufgrund der Hinzufügung neuer Funktionen in der Software aufgetreten sind. Dies geschieht auch, wenn ein Fehler behoben wurde und der Tester ihn erneut testen muss.
Zuverlässigkeitstestplan
Während der verschiedenen Phasen des SDLC (Software Development Life Cycle) können sich für die Benutzer viele Fragen zur Zukunft des Produkts stellen, z. B. „ob sie zuverlässig sind oder nicht“. Wir brauchen eine klare Lösung für solche Fragen. Mit einem geeigneten Modell können wir das Produkt vorhersagen.
Die zwei Arten von Modellen umfassen:
beste Software zum Erstellen von Flussdiagrammen
- Vorhersagemodell
- Schätzmodell
In Predictive Testing prognostizieren wir das Ergebnis mit den historischen Daten, Statistiken und Machine & Learning. Wir brauchen nur einen Bericht zu schreiben. In einem Vorhersagemodell erhalten wir nur einige historische Informationen. Mit diesen Informationen können wir ein Streudiagramm erstellen und eine Extrapolationslinie zu den vorhandenen historischen Daten zeichnen und die bevorstehenden Daten vorhersagen.
Diese Art von Modell wird vor der Entwicklungs- oder Testphase selbst durchgeführt. Beim Schätzungstest werden neben der Verwendung der historischen Daten auch die aktuellen Daten verwendet. Hier können wir die Zuverlässigkeit eines Produkts in der gegenwärtigen oder zukünftigen Zeit vorhersagen. Diese Art der Prüfung wird in den letzten Phasen des Lebenszyklus der Softwareentwicklung .
Tools zum Testen der Zuverlässigkeit
Tester müssen die Schätzung der Zuverlässigkeit einer Software ermitteln. Dies führt zur Verwendung verschiedener Tools für die Softwarezuverlässigkeit.
Mit einem standardisierten Tool können wir:
- Erkennen Sie die Fehlerinformationen.
- Wählen Sie das richtige Modell, um eine Vorhersage über die Software zu treffen.
- Generieren Sie Berichte über die Fehler.
Es gibt verschiedene Tools auf dem Markt, mit denen die Zuverlässigkeit von Software gemessen werden kann. Einige davon sind nachstehend aufgeführt:
CASRE (Computer Aided Software Reliability Estimation Tool): Dies ist keine Freeware, wir müssen sie kaufen.
Das CASRE-Tool zur Zuverlässigkeitsmessung basiert auf den vorhandenen Zuverlässigkeitsmodellen, mit deren Hilfe die Zuverlässigkeit eines Softwareprodukts besser abgeschätzt werden kann. Die GUI des Tools bietet ein besseres Verständnis der Zuverlässigkeit der Software und ist auch sehr einfach zu bedienen.
Während eines Tests können die Benutzer herausfinden, ob die Zuverlässigkeit des Systems bei Verwendung einer Reihe von Fehlerdaten zunimmt oder abnimmt. Carse bietet eine 2D-Ansicht, indem die Anzahl der Fehler gegen die Testintervallzeit aufgetragen wird. Dadurch kann ein Benutzer ein Diagramm erhalten, das das System darstellt, wie in der folgenden Abbildung dargestellt.
CASRE verwenden
- Der Benutzer kann Fehlerdaten auswählen.
- Wenn wir angeben, wie weit in der Zukunft, möchten wir die Zuverlässigkeit des Produkts vorhersagen.
- Wählen Sie die Zuverlässigkeitsmodelle aus.
- Wählen Sie ein geeignetes Modell für das Ergebnis.
- Drucken Sie das Fehlerergebnis aus.
- Speichern Sie das Ergebnis auf der Festplatte.
Weitere Tools zum Testen der Zuverlässigkeit sind: SOFTREL , SoRel (Software Reliability Analysis and Prediction), WEIBULL ++ usw.
Fazit
Zuverlässigkeitstests sind im Vergleich zu anderen Testformen kostspielig. Um dies kostengünstig zu tun, müssen wir also eine angemessene haben Versuchsplan und Testmanagement.
In SDLC spielt der Zuverlässigkeitstest eine wichtige Rolle. Wie oben erläutert, bringt die Verwendung der Zuverlässigkeitsmetriken Zuverlässigkeit in die Software und sagt die Zukunft der Software voraus. Oft ist es schwierig, Software-Zuverlässigkeit zu erreichen, wenn die Software eine hohe Komplexität aufweist.
Literatur-Empfehlungen
- Beste Software-Test-Tools 2021 (QA Test Automation Tools)
- Software Testing QA Assistant Job
- Softwaretestkurs: An welchem Softwaretestinstitut soll ich teilnehmen?
- Wählen Sie Software-Tests als Ihre Karriere
- Software Testing Technical Content Writer Freiberufler Job
- Anwendungstests - Grundlagen des Softwaretests!
- Was ist Regressionstest? Definition, Werkzeuge, Methode und Beispiel
- Einige interessante Fragen zu Softwaretests