what is system testing ultimate beginner s guide
Was ist Systemtest beim Softwaretest?
Systemtest bedeutet, das System als Ganzes zu testen. Alle Module / Komponenten sind integriert, um zu überprüfen, ob das System wie erwartet funktioniert oder nicht.
Der Systemtest wird nach dem Integrationstest durchgeführt. Dies spielt eine wichtige Rolle bei der Lieferung eines qualitativ hochwertigen Produkts.
Liste der Tutorials:
Der Prozess des Testens eines integrierten Hardware- und Softwaresystems, um zu überprüfen, ob das System die angegebenen Anforderungen erfüllt.
Überprüfung : Bestätigung durch Prüfung und Bereitstellung objektiver Nachweise, dass bestimmte Anforderungen erfüllt wurden.
Wenn eine Anwendung drei Module A, B und C hat, wird das Testen durch Kombinieren der Module A & B oder Modul B & C oder Modul A & C als Integrationstest bezeichnet. Das Integrieren aller drei Module und das Testen als komplettes System wird als Systemtest bezeichnet.
Was du lernen wirst:
- Meine Erfahrung
- Ansatz
- Warum Systemtests?
- Ist dies ein White-Box- oder Black-Box-Test?
- Wie führe ich einen Systemtest durch?
- Vorteile
- Einreise- / Ausstiegskriterien
- Systemtestplan
- Verfahren zum Schreiben von Systemtestfällen
- Systemtestfälle
- Arten von Systemtests
- Was ist ein Systemintegrationstest?
- Unterschied zwischen System- und Abnahmetests
- Tipps zur Durchführung des Systemtests
- Fazit
- Literatur-Empfehlungen
Meine Erfahrung
Also ... glaubst du wirklich, es wird so viel Zeit brauchen, um zu testen, was du nennst? Systemtests Auch nach viel Aufwand für Integrationstests?
Der Kunde, den wir kürzlich für das Projekt angesprochen haben, war nicht überzeugt von der Schätzung, die wir für jeden Testaufwand bereitgestellt haben.
Ich musste mich mit einem Beispiel einmischen:
Mike, ich möchte unsere Bemühungen und die Bedeutung von Systemtests anhand eines Beispiels erläutern.
Schieß, antwortete er.
Beispiel für einen Systemtest
Ein Autohersteller produziert das Auto nicht als ganzes Auto. Jede Komponente des Autos wird separat hergestellt, wie Sitze, Lenkung, Spiegel, Bremse, Kabel, Motor, Fahrzeugrahmen, Räder usw.
Nach der Herstellung jedes Artikels wird unabhängig geprüft, ob es so funktioniert, wie es funktionieren soll, und dies wird als Unit-Test bezeichnet.
Was ist Testplanung und Teststrategie?
Wenn nun jedes Teil mit einem anderen Teil zusammengebaut wird, wird diese zusammengebaute Kombination überprüft, ob das Zusammenbauen keine Nebenwirkungen auf die Funktionalität jeder Komponente hat und ob beide Komponenten wie erwartet zusammenarbeiten, und dies wird als Integrationstest bezeichnet.
Sobald alle Teile zusammengebaut sind und das Auto fertig ist, ist es tatsächlich nicht fertig.
Das gesamte Auto muss gemäß den festgelegten Anforderungen auf verschiedene Aspekte überprüft werden, z. B. ob das Auto reibungslos gefahren werden kann, Pausen, Gänge und andere Funktionen ordnungsgemäß funktionieren. Das Auto zeigt keine Anzeichen von Müdigkeit, nachdem es 2500 Meilen ununterbrochen gefahren wurde Auto wird allgemein akzeptiert und gemocht, Auto kann auf jeder Art von Straßen wie glatt und rau, schlampig und gerade usw. gefahren werden, und dieser ganze Testaufwand wird als Systemtest bezeichnet und hat nichts mit Integrationstests zu tun.
Das Beispiel funktionierte wie erwartet und der Kunde war von den für den Systemtest erforderlichen Anstrengungen überzeugt.
Ich habe das Beispiel hier erzählt, um die Wichtigkeit dieser Tests zu fördern.
Ansatz
Es wird ausgeführt, wenn der Integrationstest abgeschlossen ist.
Es handelt sich hauptsächlich um eine Black-Box-Typprüfung. Bei diesem Test wird die Funktionsweise des Systems aus Anwendersicht anhand eines Spezifikationsdokuments bewertet. Es erfordert keine internen Kenntnisse über Systeme wie das Design oder die Struktur des Codes.
Es enthält funktionale und nicht funktionale Anwendungsbereiche / Produkte.
Fokuskriterien:
Es konzentriert sich hauptsächlich auf Folgendes:
- Externe Schnittstellen
- Multiprogramm und komplexe Funktionen
- Sicherheit
- Wiederherstellung
- Performance
- Die reibungslose Interaktion von Bediener und Benutzer mit dem System
- Installierbarkeit
- Dokumentation
- Benutzerfreundlichkeit
- Belastung / Belastung
Warum Systemtests?
# 1) Es ist sehr wichtig, einen vollständigen Testzyklus abzuschließen, und ST ist die Phase, in der dies durchgeführt wird.
#zwei) ST wird in einer Umgebung durchgeführt, die der Produktionsumgebung ähnlich ist, und daher können die Stakeholder eine gute Vorstellung von der Reaktion des Benutzers bekommen.
#3) Dies hilft, die Fehlerbehebung nach der Bereitstellung und Supportanrufe zu minimieren.
# 4 ) In dieser STLC-Phase werden sowohl die Anwendungsarchitektur als auch die Geschäftsanforderungen getestet.
Diese Prüfung ist sehr wichtig und spielt eine wichtige Rolle bei der Lieferung eines Qualitätsprodukts an den Kunden.
Lassen Sie uns anhand der folgenden Beispiele, die unsere täglichen Aufgaben umfassen, die Bedeutung dieser Tests erkennen:
- Was ist, wenn eine Online-Transaktion nach Bestätigung fehlschlägt?
- Was passiert, wenn ein Artikel in einem Warenkorb einer Online-Site keine Bestellung zulässt?
- Was passiert, wenn beim Erstellen eines neuen Labels in einem Google Mail-Konto beim Klicken auf die Registerkarte 'Erstellen' ein Fehler auftritt?
- Was ist, wenn das System abstürzt, wenn das System stärker belastet wird?
- Was passiert, wenn das System abstürzt und die Daten nicht wie gewünscht wiederhergestellt werden können?
- Was ist, wenn die Installation von Software auf dem System viel länger dauert als erwartet und am Ende ein Fehler auftritt?
- Was ist, wenn die Antwortzeit einer Website nach der Verbesserung viel stärker als erwartet steigt?
- Was passiert, wenn eine Website zu langsam wird, als dass der Benutzer sein Reiseticket nicht buchen kann?
Oben sind nur einige Beispiele aufgeführt, die zeigen, wie sich Systemtests auswirken würden, wenn sie nicht ordnungsgemäß durchgeführt würden.
Alle obigen Beispiele sind nur das Ergebnis von entweder nicht oder nicht ordnungsgemäß durchgeführten Systemtests. Alle integrierten Module sollten getestet werden, um sicherzustellen, dass das Produkt den Anforderungen entspricht.
Ist dies ein White-Box- oder Black-Box-Test?
Systemtests können als Black-Box-Testtechnik betrachtet werden.
Black-Box-Test Die Technik erfordert keine internen Kenntnisse des Codes, während die White-Box-Technik interne Kenntnisse des Codes erfordert.
Während der Durchführung von Systemtests, die funktionsfähig und nicht funktionsfähig sind, werden Sicherheit, Leistung und viele andere Testtypen abgedeckt und unter Verwendung einer Black-Box-Technik getestet, bei der die Eingabe an das System übermittelt und die Ausgabe überprüft wird. Systeminterne Kenntnisse sind nicht erforderlich.
Black-Box-Technik:
Wie führe ich einen Systemtest durch?
Es ist im Grunde ein Teil des Softwaretests und der Testplan sollte immer einen bestimmten Platz für diesen Test enthalten.
Um das System als Ganzes zu testen, sollten die Anforderungen und Erwartungen klar sein und der Tester muss auch die Echtzeitnutzung der Anwendung verstehen.
Außerdem können die am häufigsten verwendeten Tools von Drittanbietern, Versionen von Betriebssystemen, Varianten und Architektur von Betriebssystemen die Funktionalität, Leistung, Sicherheit, Wiederherstellbarkeit oder Installierbarkeit des Systems beeinträchtigen.
Daher kann beim Testen des Systems ein klares Bild davon hilfreich sein, wie die Anwendung verwendet wird und mit welchen Problemen sie in Echtzeit konfrontiert werden kann. Darüber hinaus ist ein Anforderungsdokument ebenso wichtig wie das Verständnis der Anwendung.
Ein klares und aktualisiertes Anforderungsdokument kann den Tester vor einer Reihe von Missverständnissen, Annahmen und Fragen bewahren.
Kurz gesagt, ein spitzes und klares Anforderungsdokument mit den neuesten Aktualisierungen sowie ein Verständnis der Verwendung von Echtzeitanwendungen können ST fruchtbarer machen.
Diese Tests werden planmäßig und systematisch durchgeführt.
Im Folgenden sind die verschiedenen Schritte aufgeführt, die bei der Durchführung dieses Tests erforderlich sind:
- Der allererste Schritt besteht darin, einen Testplan zu erstellen.
- Erstellen Sie Systemtestfälle und Testskripte.
- Bereiten Sie die für diesen Test erforderlichen Testdaten vor.
- Führen Sie die Systemtestfälle und das Skript aus.
- Melde die Fehler. Testen Sie die Fehler erneut, sobald sie behoben sind.
- Regressionstests um die Auswirkungen der Änderung im Code zu überprüfen.
- Wiederholung des Testzyklus, bis das System zur Bereitstellung bereit ist.
- Melden Sie sich vom Testteam ab.
Was zu testen?
Die folgenden Punkte werden in dieser Prüfung behandelt:
- End-to-End-Tests In diesem Test wird die Überprüfung der Interaktion zwischen allen Komponenten und den externen Peripheriegeräten behandelt, um sicherzustellen, dass das System in einem der Szenarien einwandfrei funktioniert.
- Es wird überprüft, ob die dem System bereitgestellte Eingabe das erwartete Ergebnis liefert.
- Es wird überprüft, ob alle funktionalen und nicht funktionalen Anforderungen getestet wurden und ob sie wie erwartet funktionieren oder nicht.
- Dazu In diesen Tests können Erkundungstests durchgeführt werden, nachdem die Skripttests abgeschlossen wurden. Versuchsforschung Ad-hoc-Tests helfen dabei, die Fehler zu beseitigen, die beim Testen mit Skripten nicht zu finden sind, da die Tester die Möglichkeit haben, Tests durchzuführen, da ihr Wunsch auf ihrer Erfahrung und Intuition basiert.
Vorteile
Es gibt mehrere Vorteile:
- Dieser Test umfasst End-to-End-Szenarien zum Testen des Systems.
- Diese Tests werden in derselben Umgebung wie die Produktionsumgebung durchgeführt. Dies hilft, die Benutzerperspektive zu verstehen und verhindert die Probleme, die auftreten können, wenn das System live geschaltet wird.
- Wenn diese Tests systematisch und ordnungsgemäß durchgeführt werden, können die Probleme nach der Produktion gemindert werden.
- Dieser Test testet sowohl die Anwendungsarchitektur als auch die Geschäftsanforderungen.
Einreise- / Ausstiegskriterien
Werfen wir einen detaillierten Blick auf die Ein- / Ausstiegskriterien für den Systemtest.
Aufnahmekriterien:
- Das System sollte die Beendigungskriterien des Integrationstests bestanden haben, d. H. Alle Testfälle sollten ausgeführt worden sein und es sollte keine kritische oder Priorität P1, ein P2-Fehler in einem offenen Zustand, vorhanden sein.
- Versuchsplan für diese Prüfung sollte genehmigt und abgemeldet werden.
- Testfälle / -szenarien sollten zur Ausführung bereit sein.
- Testskripte sollten zur Ausführung bereit sein.
- Alle nicht funktionalen Anforderungen sollten verfügbar sein und Testfälle dafür sollten erstellt worden sein.
- Die Testumgebung sollte bereit sein.
Abbruchkriterium:
- Alle Testfälle sollten ausgeführt werden.
- Keine kritischen oder vorrangigen oder sicherheitsrelevanten Fehler sollten offen sein.
- Wenn sich Fehler mit mittlerer oder niedriger Priorität in einem offenen Zustand befinden, sollten sie mit Zustimmung des Kunden implementiert werden.
- Der Exit-Bericht sollte eingereicht werden.
Systemtestplan
Testplan ist ein Dokument, mit dem Zweck, Ziel und Umfang eines zu entwickelnden Produkts beschrieben werden. Was getestet werden muss und was nicht getestet werden sollte, Teststrategien, zu verwendende Tools, erforderliche Umgebung und jedes weitere Detail werden dokumentiert, um mit dem Testen fortzufahren.
Der Testplan hilft dabei, die Tests sehr systematisch und strategisch durchzuführen, und hilft dabei, Risiken oder Probleme zu vermeiden, während die Tests durchgeführt werden.
Der Systemtestplan umfasst die folgenden Punkte:
- Zweck und Ziel sind für diesen Test definiert.
- Geltungsbereich (Zu testende Funktionen, Nicht zu testende Funktionen werden aufgelistet).
- Testakzeptanzkriterien (Kriterien, nach denen das System akzeptiert wird, d. H. Die in den Akzeptanzkriterien genannten Punkte sollten sich im Bestehenszustand befinden).
- Ein- / Ausstiegskriterien (Definiert die Kriterien, wann Systemtests beginnen und wann sie als abgeschlossen betrachtet werden sollen).
- Testplan (Schätzung der zu einem bestimmten Zeitpunkt durchzuführenden Tests).
- Teststrategie (Beinhaltet Testtechniken).
- Ressourcen (Anzahl der zum Testen erforderlichen Ressourcen, ihre Rollen, Ressourcenverfügbarkeit usw.).
- Testumgebung (Betriebssystem, Browser, Plattform).
- Testfälle (Liste der auszuführenden Testfälle).
- Annahmen (Falls Annahmen vorhanden sind, sollten diese in den Testplan aufgenommen werden).
Verfahren zum Schreiben von Systemtestfällen
Systemtestfälle decken alle Szenarien und Anwendungsfälle ab und decken auch funktionale, nicht funktionale, sicherheitsrelevante Testfälle für Benutzeroberflächen ab. Die Testfälle werden genauso geschrieben wie für Funktionstests.
Systemtestfälle enthalten die folgenden Felder in der Vorlage:
- Testfall-ID
- Name der Testsuite
- Beschreibung - Beschreibt den auszuführenden Testfall.
- Schritte - Schritt für Schritt, um zu beschreiben, wie Tests durchgeführt werden.
- Testdaten - Dummy-Daten werden zum Testen der Anwendung vorbereitet.
- Erwartetes Ergebnis - Das erwartete Ergebnis gemäß dem Anforderungsdokument ist in dieser Spalte angegeben.
- Tatsächliches Ergebnis - Das Ergebnis nach Ausführung des Testfalls wird in dieser Spalte angegeben.
- Bestanden / Nicht Bestanden - Der Vergleich des tatsächlichen und erwarteten Ergebnisses definiert die Bestanden / Nicht Bestanden-Kriterien.
- Bemerkungen
Systemtestfälle
Hier einige Beispiele für Testszenarien für eine E-Commerce-Site:
- Wenn die Site ordnungsgemäß mit allen relevanten Seiten, Funktionen und dem Logo gestartet wird
- Wenn der Benutzer sich auf der Site registrieren / anmelden kann
- Wenn der Benutzer verfügbare Produkte sehen kann, kann er Produkte in seinen Warenkorb legen, die Zahlung ausführen und die Bestätigung per E-Mail oder SMS oder Anruf erhalten.
- Wenn die Hauptfunktionen wie Suchen, Filtern, Sortieren, Hinzufügen, Ändern, Wunschliste usw. wie erwartet funktionieren
- Wenn die Anzahl der Benutzer (wie im Anforderungsdokument definiert) gleichzeitig auf die Site zugreifen kann
- Wenn die Site in allen gängigen Browsern und ihren neuesten Versionen ordnungsgemäß gestartet wird
- Wenn die Transaktionen auf der Site über einen bestimmten Benutzer ausgeführt werden, sind diese sicher genug
- Wenn die Site auf allen unterstützten Plattformen wie Windows, Linux, Mobile usw. ordnungsgemäß gestartet wird.
- Wenn das Benutzerhandbuch / die Rückgaberichtlinie, die Datenschutzrichtlinie und die Nutzungsbedingungen der Website als separates Dokument verfügbar und für Neulinge oder Erstbenutzer nützlich sind.
- Wenn der Inhalt der Seiten richtig ausgerichtet, gut verwaltet und ohne Rechtschreibfehler ist.
- Wenn das Sitzungszeitlimit implementiert ist und wie erwartet funktioniert
- Wenn ein Benutzer nach der Nutzung der Website zufrieden ist oder mit anderen Worten, fällt es dem Benutzer nicht schwer, die Website zu nutzen.
Arten von Systemtests
ST wird als Obermenge aller Arten von Tests bezeichnet, da alle wichtigen Arten von Tests darin behandelt werden. Obwohl der Fokus auf Testarten je nach Produkt, Organisationsprozessen, Zeitplan und Anforderungen variieren kann.
Insgesamt kann es wie folgt definiert werden:
Funktionstests: Um sicherzustellen, dass die Funktionalität des Produkts gemäß den definierten Anforderungen innerhalb der Funktionen des Systems funktioniert.
Wiederherstellbarkeitstests: Um sicherzustellen, wie gut sich das System von verschiedenen Eingabefehlern und anderen Fehlersituationen erholt.
Interoperabilitätstests: Um sicherzustellen, dass das System mit Produkten von Drittanbietern gut funktioniert oder nicht.
Leistungstest: Um die Leistung des Systems unter den verschiedenen Bedingungen in Bezug auf die Leistungsmerkmale sicherzustellen.
Skalierbarkeitstests: Um sicherzustellen, dass die Skalierungsfähigkeiten des Systems in verschiedenen Begriffen wie Benutzerskalierung, geografische Skalierung und Ressourcenskalierung verfügbar sind.
Zuverlässigkeitstests: Um sicherzustellen, dass das System länger betrieben werden kann, ohne dass Fehler auftreten.
Regressionstests: Um die Stabilität des Systems während der Integration verschiedener Subsysteme und Wartungsaufgaben sicherzustellen.
Dokumentationstests: Um sicherzustellen, dass das Benutzerhandbuch des Systems und andere Hilfethemen-Dokumente korrekt und verwendbar sind.
Sicherheitstests: Um sicherzustellen, dass das System keinen unbefugten Zugriff auf Daten und Ressourcen zulässt.
Usability-Tests :: Um sicherzustellen, dass das System einfach zu bedienen ist, lernen und bedienen Sie es.
Weitere Systemtesttypen
# 1) Testen der grafischen Benutzeroberfläche (GUI):
GUI-Tests werden durchgeführt, um zu überprüfen, ob die GUI eines Systems wie erwartet funktioniert oder nicht. GUI ist im Grunde das, was für einen Benutzer sichtbar ist, während er die Anwendung verwendet. Beim Testen der Benutzeroberfläche werden Schaltflächen, Symbole, Kontrollkästchen, Listenfeld, Textfeld, Menüs, Symbolleisten, Dialogfelder usw. getestet.
# 2) Kompatibilitätstests:
Kompatibilitätstests wird durchgeführt, um sicherzustellen, dass das entwickelte Produkt mit verschiedenen Browsern, Hardwareplattformen, Betriebssystemen und Datenbanken gemäß dem Anforderungsdokument kompatibel ist.
# 3) Ausnahmebehandlung:
Ausnahmebehandlungstests werden durchgeführt, um sicherzustellen, dass selbst wenn ein unerwarteter Fehler im Produkt auftritt, die richtige Fehlermeldung angezeigt wird und die Anwendung nicht gestoppt wird. Die Ausnahme wird so behandelt, dass der Fehler angezeigt wird, während das Produkt wiederhergestellt wird, und das System die falsche Transaktion verarbeiten kann.
# 4) Volumentest:
Volumentests sind eine Art von nicht funktionalen Tests, bei denen Tests unter Verwendung einer großen Datenmenge durchgeführt werden. Zum Beispiel, Das Datenvolumen in der Datenbank wird erhöht, um die Systemleistung zu überprüfen.
# 5) Stresstests:
Stresstests werden durchgeführt, indem die Anzahl der Benutzer (gleichzeitig) einer Anwendung so weit erhöht wird, dass die Anwendung ausfällt. Dies wird durchgeführt, um den Punkt zu überprüfen, an dem die Anwendung ausfällt.
# 6) Sanity Testing:
Sanity Testing wird ausgeführt, wenn der Build mit einer Änderung des Codes oder der Funktionalität veröffentlicht wird oder wenn ein Fehler behoben wurde. Es wird überprüft, ob die vorgenommenen Änderungen den Code nicht beeinflusst haben und aus diesem Grund kein anderes Problem aufgetreten ist und das System wie zuvor funktioniert.
Wenn ein Problem auftritt, wird der Build nicht für weitere Tests akzeptiert.
Grundsätzlich werden keine gründlichen Tests für den Build durchgeführt, um Zeit und Kosten zu sparen, da der Build für ein gefundenes Problem abgelehnt wird. Sanity-Tests werden für die vorgenommene Änderung oder für das behobene Problem und nicht für das gesamte System durchgeführt.
# 7) Rauchprüfung:
Rauchprüfung ist ein Test, der für den Build durchgeführt wird, um zu überprüfen, ob der Build weiter testbar ist oder nicht. Es wird überprüft, ob der Build teststabil ist und alle kritischen Funktionen einwandfrei funktionieren. Rauchtests werden für das gesamte System durchgeführt, d. H. End-to-End-Tests werden durchgeführt.
# 8) Erkundungstests:
Versuchsforschung Wie der Name schon sagt, geht es darum, die Anwendung zu erkunden. Bei Sondierungstests werden keine Skripttests durchgeführt. Testfälle werden zusammen mit dem Test geschrieben. Es konzentriert sich mehr auf die Ausführung als auf die Planung.
Der Tester hat die Freiheit, seine Intuition, Erfahrung und seinen Intellekt selbst zu testen. Ein Tester kann jedes Merkmal auswählen, das zuerst getestet werden soll, d. H. Er kann das zu testende Merkmal zufällig auswählen, im Gegensatz zu den anderen Techniken, bei denen die strukturelle Methode zum Durchführen von Tests verwendet wird.
# 9) Ad-hoc-Tests:
Ad-hoc-Tests ist ein informelles Testen, bei dem keine Dokumentation oder Planung zum Testen der Anwendung durchgeführt wird. Der Tester testet die Anwendung ohne Testfälle. Das Ziel eines Testers ist es, die Anwendung zu brechen. Der Tester verwendet seine Erfahrung, Vermutung und Intuition, um die kritischen Probleme in der Anwendung zu finden.
# 10) Installationstests:
Installationstests ist zu überprüfen, ob die Software ohne Probleme installiert wird.
Dies ist der wichtigste Teil des Testens, da die Installation der Software die allererste Interaktion zwischen dem Benutzer und dem Produkt darstellt. Die Art der Installationstests hängt von verschiedenen Faktoren wie Betriebssystem, Plattform, Verteilung von Software usw. ab.
Testfälle, die aufgenommen werden können, wenn eine Installation über das Internet erfolgt:
- Schlechte Netzwerkgeschwindigkeit und unterbrochene Verbindung.
- Firewall und sicherheitsrelevant.
- Größe und ungefähre Zeit werden genommen.
- Gleichzeitige Installation / Downloads.
- Unzureichender Speicher
- Unzureichender Platz
- Installation abgebrochen
# 11) Wartungstests:
Sobald das Produkt live geschaltet wird, kann das Problem in einer Live-Umgebung auftreten oder es kann eine Verbesserung des Produkts erforderlich sein.
Das Produkt muss gewartet werden, sobald es in Betrieb genommen wird. Dies wird vom Wartungsteam erledigt. Die Tests, die für Probleme oder Verbesserungen oder die Migration auf die Hardware durchgeführt werden, fallen unter Wartungstests.
Was ist ein Systemintegrationstest?
Es handelt sich um eine Art von Test, bei dem die Fähigkeit des Systems überprüft wird, die Datenintegrität und den Datenbetrieb in Abstimmung mit anderen Systemen in derselben Umgebung aufrechtzuerhalten.
Beispiel für Systemintegrationstests:
Nehmen wir das Beispiel einer bekannten Online-Ticketbuchungsseite - http://irctc.co.in.
Dies ist eine Ticketbuchungsfunktion. Eine Online-Shopping-Einrichtung interagiert mit PayPal. Insgesamt kann man es als A * B * C = R betrachten.
Auf Systemebene können die Online-Ticketbuchungsfunktion, die Online-Einkaufsfunktion und die Online-Zahlungsoption nun unabhängig voneinander vom System getestet werden, gefolgt von einer Überprüfung der Integrationstests für jede dieser Funktionen. Und dann muss das gesamte System systematisch getestet werden.
Woher kommen also Systemintegrationstests?
Das Webportal http://Irctc.co.in ist eine Kombination von Systemen. Sie können Tests auf derselben Ebene durchführen (einzelnes System, System von Systemen), aber auf jeder Ebene möchten Sie sich möglicherweise auf verschiedene Risiken konzentrieren (Integrationsprobleme, unabhängige Funktionalität).
- Während Sie die Online-Ticketbuchungsfunktion testen, können Sie überprüfen, ob Sie Tickets online buchen können. Sie können auch Integrationsprobleme in Betracht ziehen Zum Beispiel, Die Ticketbuchungsfunktion integriert das Back-End in das Front-End (UI). Zum Beispiel, Wie verhält sich das Front-End, wenn der Datenbankserver nur langsam reagiert?
- Testen der Online-Ticketbuchungsfunktion mit Online-Einkaufsmöglichkeit. Sie können überprüfen, ob die Online-Einkaufsfunktion für die im System angemeldeten Benutzer verfügbar ist, um Tickets online zu buchen. Sie können auch eine Überprüfung der Integration in die Online-Einkaufsfunktion in Betracht ziehen. Zum Beispiel, wenn der Benutzer in der Lage ist, ein Produkt ohne Probleme auszuwählen und zu kaufen.
- Testen der Integration der Online-Ticketbuchungsfunktion in PayPal. Sie können überprüfen, ob nach der Buchung von Tickets Geld von Ihrem PayPal-Konto auf das Online-Ticketbuchungskonto überwiesen wurde. Sie können auch die Überprüfung der Integration in PayPal in Betracht ziehen. Zum Beispiel, Was ist, wenn das System zwei Einträge in eine Datenbank einfügt, nachdem nur einmal Geld abgebucht wurde?
Unterschiedzwischen Systemtest und Systemintegrationstest:
Der Hauptunterschied ist:
- System Testing kümmert sich um die Integrität eines einzelnen Systems mit der relevanten Umgebung
- Beim Testen der Systemintegration wird die Integrität mehrerer Systeme untereinander in derselben Umgebung überwacht.
Somit ist der Systemtest der Beginn eines echten Tests, bei dem Sie ein Produkt als Ganzes und nicht ein Modul / eine Funktion testen.
Unterschied zwischen System- und Abnahmetests
Nachstehend sind die Hauptunterschiede aufgeführt:
Systemtests | Abnahmetests | |
---|---|---|
1 | Systemtests sind Tests eines Gesamtsystems. End-to-End-Tests werden durchgeführt, um sicherzustellen, dass alle Szenarien wie erwartet funktionieren. | Abnahmetests werden durchgeführt, um zu überprüfen, ob das Produkt den Kundenanforderungen entspricht. |
zwei | Systemtests umfassen funktionale und nicht funktionale Tests und werden von den Testern durchgeführt. | Abnahmetests sind Funktionstests und werden sowohl von Testern als auch von Kunden durchgeführt. |
3 | Das Testen wird unter Verwendung von Testdaten durchgeführt, die von den Testern erstellt wurden. | Bei der Durchführung von Abnahmetests werden Real- / Produktionsdaten verwendet. |
4 | Ein Gesamtsystem wird getestet, um die Funktionalität und Leistung des Produkts zu überprüfen. | Abnahmetests werden durchgeführt, um diese Geschäftsanforderung zu überprüfen, d. H. Sie lösen den Zweck, den der Kunde sucht. |
5 | Im Test festgestellte Mängel können behoben werden. | Bei der Abnahmeprüfung festgestellte Mängel gelten als Fehler des Produkts. |
6 | System- und Systemintegrationstests sind Typen für Systemtests. | Alpha- und Betatests werden akzeptiert. |
Tipps zur Durchführung des Systemtests
- Replizieren Sie Echtzeitszenarien, anstatt ideale Tests durchzuführen, da das System von einem Endbenutzer und nicht von einem geschulten Tester verwendet wird.
- Überprüfen Sie die Reaktion des Systems auf verschiedene Weise, da der Mensch nicht gerne warten oder die falschen Daten sehen möchte.
- Installieren und konfigurieren Sie das System gemäß der Dokumentation, da der Endbenutzer dies tun wird.
- Durch die Einbeziehung von Mitarbeitern aus verschiedenen Bereichen wie Geschäftsanalysten, Entwicklern, Testern und Kunden kann ein besseres System eingeschickt werden.
- Regelmäßige Tests sind der einzige Weg, um sicherzustellen, dass die kleinste Änderung im Code zur Behebung des Fehlers keinen weiteren kritischen Fehler in das System eingefügt hat.
Fazit
Systemtests sind sehr wichtig, und wenn sie nicht ordnungsgemäß durchgeführt werden, können kritische Probleme in der Live-Umgebung auftreten.
Ein Gesamtsystem weist verschiedene zu überprüfende Merkmale auf. Ein einfaches Beispiel wäre jede Website. Wenn es nicht als Ganzes getestet wird, stellt der Benutzer möglicherweise fest, dass diese Site sehr langsam ist, oder die Site kann abstürzen, sobald sich eine große Anzahl von Benutzern gleichzeitig anmeldet.
Und diese Eigenschaften können erst getestet werden, wenn die Website als Ganzes getestet wurde.
Ich hoffe, dieses Tutorial war sehr nützlich, um das Konzept des Systemtests zu verstehen.
Literatur-Empfehlungen
- Arten von Softwaretests: Verschiedene Testtypen mit Details
- Alpha-Tests und Beta-Tests (eine vollständige Anleitung)
- Was ist System Integration Testing (SIT)? Lernen Sie anhand von Beispielen
- Funktionstests gegen nichtfunktionale Tests
- Kontinuierlicher Integrationsprozess: So verbessern Sie die Softwarequalität und reduzieren das Risiko
- Top 10 Integrationstest-Tools zum Schreiben von Integrationstests
- Was ist Integrationstest (Tutorial mit Beispiel für Integrationstests)
- Was ist Ausdauertest beim Testen von Software (Beispiele)