Software testing is a process of verifying that our application or software is working without any defects. Software testing is used to make our application/software more user friendly and prevent any defects in the software at later point of time.
Arten von Softwaretests,
Funktionsprüfung:
Unit-Tests: Beim Unit-Test testen wir kleinere Einheiten von Modulen der Anwendung. Wird auch als „Komponententest“ bezeichnet.
Es wird hauptsächlich von Entwicklern durchgeführt, die den White-Box-Ansatz verwenden.
Das Ziel des Unit-Tests besteht darin, Fehler in einem früheren Entwicklungsstadium zu erkennen.
Beispiel:
In einer Bankanwendung wird eine Einheit der Anwendung wie die Anmeldeseite mit verschiedenen Testfällen getestet, z. B. mit gültigem Benutzernamen/Passwort, ungültigem Benutzernamen und Passwort usw.
Integrationstests: Beim Integrationstest integrieren wir die einzelnen Einheiten und testen die kollektive Funktionalität.
Es wird von Testern auf Testservern durchgeführt.
Der Zweck des Integrationstests besteht darin, Fehler bei der Interaktion zwischen den einzelnen Einheiten aufzudecken.
Arten nichtfunktionaler Tests:
Leistungstests: Bei diesen Tests überprüfen wir die Leistung und Stabilität der Software unter unterschiedlichen Arbeitslasten. Der Umfang der Leistungstests umfasst das Testen der Geschwindigkeit, Skalierbarkeit, Stabilität und Zuverlässigkeit (Produkt ist sicher oder nicht) der Software.
Beispiel: Die Reaktionszeit einer Bankanwendung beträgt normalerweise 60 Sekunden für die Anmeldeseite und diese Reaktionszeit ändert sich nicht, wenn 10.000 Benutzer gleichzeitig versuchen, auf die Anmeldeseite zuzugreifen.
Auslastungstests: Bei Auslastungstests testen wir, ob die Software große Transaktionen oder einen Anstieg der Auslastung verarbeiten kann. Lasttests werden hauptsächlich von Endbenutzern durchgeführt. Beispiel: Wenn eine große Transaktionslast an eine Bankanwendung übergeben wird.
Volumentests: Beim Volumentest testen wir die Software, indem wir große Mengen auf einmal durchlaufen und die Reaktionszeit des Systems überprüfen. Beispiel: Wenn große Datenmengen an das System übergeben werden, um die Reaktionszeit von Bankanwendungen zu überprüfen.
Softwareentwicklungslebenszyklus und Softwaretestlebenszyklus:
Wir müssen wissen, was der Lebenszyklus der Softwareentwicklung und der Softwaretest sowie die verschiedenen darin enthaltenen Tests sind, um zu verstehen, welche verschiedenen Arten von Softwaretests es gibt, z. B. Unit-Tests, Integrationstests und Systemtests, und welcher Typ für einen bestimmten Testfall am besten geeignet ist . Für einen Tester ist es außerdem wichtig zu wissen, wie man Testfälle für ein bestimmtes Szenario schreibt und diese dann ausführt. Nachfolgend sind die wichtigsten Schritte im Softwaretest-Lebenszyklus aufgeführt:
1.Anforderungsanalyse
Dies ist die allererste Phase von STLC, in der die Tester die Projektanforderungen analysieren, indem sie sie mit verschiedenen Stakeholdern besprechen und das RTM vorbereiten (Requirement Traceability Matrix ist ein Dokument, in dem wir die Anforderungen den entsprechenden Testfällen zuordnen).
2.Testplanung
In dieser Phase bestimmt der Testmanager den Testplan oder die Teststrategie, die Auswahl des Testtools, die Testarten im Umfang, die Kostenschätzung, die Ressourcenplanung, die erforderlichen Schulungen usw.
3.Testfallentwicklung
In der Testfall-Entwicklungsphase werden die Testfälle, Skripte und Daten erstellt.
4.Einrichtung der Testumgebung
In dieser Phase wird die Testumgebung auf der Grundlage der Software- und Hardwareanforderungen eingerichtet. In dieser Phase werden Rauchtests durchgeführt.
5.Testausführung
In dieser Phase werden Testfälle und Skripte ausgeführt und die Ergebnisse dokumentiert. Die Fehler/Mängel werden ebenfalls gemeldet und sobald der Fehler behoben ist, werden in dieser Phase auch erneute Tests durchgeführt.
6.Verschluss testen
Dies ist die letzte Phase von STLC, in der die Tester die Testergebnisse und Testabschlussmetriken melden. In dieser Phase wird auch der EOTR (End of Testing Report) von den Testern erstellt und eingereicht.
Bedeutung von Softwaretests
Économie de coûts : comme nous testons fréquemment le logiciel, cela peut éviter des réparations inutiles à un stade ultérieur.
Bonne qualité et sécurité du produit : les tests logiciels aident également à maintenir notre produit et à éviter les failles de sécurité
Satisfaction client : les tests logiciels contribuent également à atteindre la satisfaction client et à recueillir des commentaires sur l'application.
L'atténuation des risques peut être réalisée en identifiant les problèmes à un stade précoce et en évitant les problèmes critiques au cours des étapes ultérieures du développement et après la publication.
Vérifier que le logiciel répond aux exigences spécifiées et exécute les fonctionnalités prévues.
L'amélioration de la sécurité peut être obtenue en détectant les vulnérabilités et en protégeant le logiciel contre les menaces et les violations de sécurité.
Les tests logiciels sont pertinents pour identifier tout problème et défaut avec le code écrit dans le projet afin qu'ils puissent être corrigés ou corrigés avant la livraison du produit logiciel et améliorent également la qualité du produit en ce qui concerne le client. Tester un système permet d'identifier les lacunes, les erreurs ou tout type d'exigences manquantes différant des exigences réelles.
Das obige ist der detaillierte Inhalt von#Einführung in das Softwaretesten#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!