STLC - Testausführung
Bei der Testausführung wird der Code ausgeführt und die erwarteten und tatsächlichen Ergebnisse verglichen. Folgende Faktoren müssen für einen Testausführungsprozess berücksichtigt werden:
- Wählen Sie basierend auf einem Risiko eine Teilmenge der Testsuite aus, die für diesen Zyklus ausgeführt werden soll.
- Weisen Sie die Testfälle in jeder Testsuite den Testern zur Ausführung zu.
- Führen Sie Tests durch, melden Sie Fehler und erfassen Sie den Teststatus kontinuierlich.
- Beheben Sie auftretende Blockierungsprobleme.
- Melden Sie den Status, passen Sie die Zuordnungen an und überdenken Sie Pläne und Prioritäten täglich.
- Ergebnisse und Status des Testzyklus melden.
Die folgenden Punkte müssen bei der Testausführung berücksichtigt werden.
In dieser Phase führt das QS-Team die tatsächliche Validierung der AUT anhand vorbereiteter Testfälle durch und vergleicht das schrittweise Ergebnis mit dem erwarteten Ergebnis.
Das Einstiegskriterium für diese Phase ist der Abschluss des Testplans und der Testfallentwicklungsphase. Die Testdaten sollten ebenfalls bereit sein.
Die Validierung des Testumgebungs-Setups wird immer durch Rauchtests empfohlen, bevor die Testausführung offiziell beginnt.
Die Beendigungskriterien erfordern die erfolgreiche Validierung aller Testfälle. Mängel sollten geschlossen oder zurückgestellt werden; Testfallausführung und Fehlerzusammenfassungsbericht sollten bereit sein.
Aktivitäten zur Testdurchführung
Das Ziel dieser Phase ist die Echtzeitvalidierung von AUT, bevor mit der Produktion / Freigabe fortgefahren wird. Um sich von dieser Phase abzumelden, führt das QS-Team verschiedene Arten von Tests durch, um die Produktqualität sicherzustellen. Neben dieser Fehlerberichterstattung und erneuten Prüfung ist auch in dieser Phase eine wichtige Aktivität. Im Folgenden sind die wichtigen Aktivitäten dieser Phase aufgeführt:
Testen der Systemintegration
Hier beginnt die eigentliche Validierung von Produkt / AUT. System Integration Testing (SIT) ist eine Black-Box-Testtechnik, mit der die Konformität des Systems anhand der festgelegten Anforderungen / Testfälle bewertet wird.
Systemintegrationstests werden normalerweise für eine Teilmenge des Systems durchgeführt. Die SIT kann mit minimalem Einsatz von Testwerkzeugen durchgeführt, auf die ausgetauschten Interaktionen überprüft und das Verhalten jedes Datenfelds innerhalb einer einzelnen Schicht untersucht werden. Nach der Integration gibt es drei Hauptzustände des Datenflusses:
- Datenstatus innerhalb der Integrationsschicht
- Datenstatus innerhalb der Datenbankschicht
- Datenstatus innerhalb der Anwendungsschicht
Note- Bei SIT-Tests versucht das QA-Team, so viele Fehler wie möglich zu finden, um die Qualität sicherzustellen. Das Hauptziel hierbei ist es, so viele Fehler wie möglich zu finden.
Fehlerberichterstattung
Ein Softwarefehler tritt auf, wenn das erwartete Ergebnis nicht mit dem tatsächlichen Ergebnis übereinstimmt. Dies kann ein Fehler, ein Fehler, ein Fehler oder ein Fehler in einem Computerprogramm sein. Die meisten Fehler entstehen durch Fehler und Irrtümer von Entwicklern oder Architekten.
Während der Durchführung von SIT-Tests stellt das QA-Team diese Art von Fehlern fest und diese müssen den betroffenen Teammitgliedern gemeldet werden. Die Mitglieder ergreifen weitere Maßnahmen und beheben die Mängel. Ein weiterer Vorteil der Berichterstattung besteht darin, dass der Status von Fehlern leichter nachverfolgt werden kann. Es gibt viele beliebte Tools wie ALM, QC, JIRA, Version 1 und Bugzilla, die die Fehlerberichterstattung und -verfolgung unterstützen.
Die Fehlerberichterstattung ist ein Prozess zum Auffinden von Fehlern in der zu testenden Anwendung oder zum getesteten Produkt, indem das Feedback von Kunden getestet oder aufgezeichnet wird und neue Versionen des Produkts erstellt werden, mit denen die Fehler basierend auf dem Feedback des Kunden behoben werden.
Die Fehlerverfolgung ist auch ein wichtiger Prozess in der Softwareentwicklung, da komplexe und geschäftskritische Systeme Hunderte von Fehlern aufweisen. Einer der schwierigsten Faktoren ist die Verwaltung, Bewertung und Priorisierung dieser Fehler. Die Anzahl der Fehler wird über einen bestimmten Zeitraum vervielfacht. Um sie effektiv zu verwalten, wird das Fehlerverfolgungssystem verwendet, um die Arbeit zu erleichtern.
Fehlerzuordnung
Sobald ein Fehler gemeldet und protokolliert wurde, sollte er den betreffenden fehlgeschlagenen / blockierten Testfällen und den entsprechenden Anforderungen in der Anforderungsrückverfolgbarkeitsmatrix zugeordnet werden. Diese Zuordnung erfolgt durch den Defect Reporter. Es hilft, einen ordnungsgemäßen Fehlerbericht zu erstellen und die Unschärfe des Produkts zu analysieren. Sobald die Testfälle und Anforderungen mit dem Fehler verknüpft sind, können die Stakeholder analysieren und entscheiden, ob der Fehler basierend auf Priorität und Schweregrad behoben / verschoben werden soll.
Erneutes Testen
Beim erneuten Testen wird ein zuvor fehlgeschlagener Test gegen AUT ausgeführt, um zu überprüfen, ob das Problem behoben ist. Nachdem ein Fehler behoben wurde, wird ein erneuter Test durchgeführt, um das Szenario unter denselben Umgebungsbedingungen zu überprüfen.
Während des erneuten Testens suchen Tester nach detaillierten Details im geänderten Funktionsbereich, während Regressionstests alle Hauptfunktionen abdecken, um sicherzustellen, dass aufgrund dieser Änderung keine Funktionen beeinträchtigt werden.
Regressionstests
Sobald sich alle Fehler im Status "Geschlossen", "Zurückgestellt" oder "Zurückgewiesen" befinden und keiner der Testfälle in Bearbeitung / Fehlgeschlagen / Kein Ausführen ist, kann gesagt werden, dass das Testen der Systemintegration vollständig auf Testfällen und Anforderungen basiert. Es ist jedoch eine schnelle Testrunde erforderlich, um sicherzustellen, dass keine der Funktionen aufgrund von Codeänderungen / Fehlerkorrekturen beeinträchtigt wird.
Regressionstests sind eine Black-Box-Testtechnik, bei der die Tests erneut ausgeführt werden, die sich aufgrund von Codeänderungen ausgewirkt haben. Diese Tests sollten während des gesamten Lebenszyklus der Softwareentwicklung so oft wie möglich durchgeführt werden.
Arten von Regressionstests
Final Regression Tests- Ein "abschließender Regressionstest" wird durchgeführt, um den Build zu validieren, der über einen bestimmten Zeitraum keine Änderung erfahren hat. Dieser Build wird bereitgestellt oder an Kunden ausgeliefert.
Regression Tests - Ein normaler Regressionstest wird durchgeführt, um zu überprüfen, ob der Build durch die letzten Codeänderungen zur Fehlerbehebung oder zur Verbesserung KEINE anderen Teile der Anwendung beschädigt hat.
Aktivitätsblockdiagramm
Das folgende Blockdiagramm zeigt die wichtigen Aktivitäten in dieser Phase. es zeigt auch die Abhängigkeit von den vorherigen Phasen -