how improve test release process
Sehen wir uns den typischen Prozess an, der mit der Bereitstellung von Software von der 'Entwicklungsphase' bis zur 'Testphase' für a verbunden ist erfolgreiche fehlerfreie Softwareversion für Produktion / Client .
Diese Prozesse werden von Softwareunternehmen entweder übersehen oder übersprungen, was zu einem schlechten Testmanagement und damit zu einem „ Buggy 'Software-Releases für den Client, die zu' unzufriedene Kunden ”.
Obwohl Das Testteam gibt für jede Veröffentlichung viel Zeit und Mühe Wenn die freigegebene Software nicht die definierte oder Benchmark-Qualität aufweist oder die erwarteten Kriterien nicht erfüllt, wirkt sich dies nicht nur auf die Reputation des Unternehmens bei den Kunden aus, sondern demotiviert und demoralisiert auch das Projektteam, vor allem das gesamte Testteam .
Wenn Sie in diesem Szenario Teil eines Testteams sind, denken Sie möglicherweise immer wieder darüber nach, wie Sie meine Testfunktionen verbessern können und wie Sie diese Situation besser überwinden können.
Ich möchte einige Tipps und Vorschläge geben, basierend auf meinen Erfahrungen mit verschiedenen Testteams, die an Softwareanwendungen und Release-Versionen von Unternehmensprodukten mit mehreren Domänen und Plattformen sowie mit mehreren Test-Frameworks beteiligt sind wie man die Testfreigabeprozesse verbessert Dies vereinfacht Ihr Berufsleben als Testingenieur oder Testmanager für die Bereitstellung von erstklassiger Software.
Was du lernen wirst:
- Testfreigabeprozess
- Verbesserung des Testfreigabeprozesses:
- Verwalten und Steuern des Inhalts der Testversion
- Beispielvorlage für Veröffentlichungsberichte:
- Fazit:
- Literatur-Empfehlungen
Testfreigabeprozess
Die folgende Tabelle gibt einen Überblick über einen Testfreigabeprozess mit drei universellen Phasen wie Eingabe, Prozess und Ausgabe.
Was sind die besten vr Apps für Android
EINGANG | PROZESS | AUSGABE |
---|---|---|
7 | Die Checkliste für die Codeüberprüfung wurde aktualisiert und ist in VSS verfügbar. | |
Vorheriger Prozess Entwicklung | Prozess beginnt mit • Installation der freigegebenen Software auf dem Testserver | Nächste Prozessanforderungen • Software, die die Rauch- / Sanitätsprüfung bestanden hat |
Informations- / Dokumentreferenz • Benutzeranforderungsdokument • Softwareanforderungsspezifikationen • Unit Testing Plan • Codierungsstandards • Checkliste zur Codeüberprüfung • Entwicklungsplan • Qualitätssicherungsplan • Aufgabenverteilung • Arbeitspaket • Projektplan • Projektplan • Konfigurationsmanagementplan • Risikomanagementplan. | Unterprozesse • Testfälle für alle Einheiten vorbereiten • Entwicklung & Unit Testing • Behandlung von Nichtkonformitätsverfahren • Implementieren des Konfigurationsmanagementplans. • Implementierung des Risikomanagementplans • Überwachung des Projektfortschritts • Fehlerkorrektur und Überprüfungen | Interne Kundenbedürfnisse • Software-Build mit Versionsnummer • Freigabebericht • Testfälle / Test Suite-Dokument • Testausführungsplanung • Rückverfolgbarkeitsmatrix • Testdaten |
Überprüfung eingehender Eingaben • Projektdokumente werden geprüft und genehmigt? • Codierungsstandards, Checkliste zur Codeüberprüfung stehen als Referenz zur Verfügung? • Zugewiesene Aufgabe und aktualisiertes Arbeitspaket? • Funktionsspezifikation, Entwicklungsplan und Qualitätsplan werden überprüft und genehmigt? • Risikomanagementplan hat Risikominderung und Kontingenz, um mit Risiken umzugehen? • Effektivität des Projektplans, um das Produkt pünktlich zu liefern? | Prozessspezifikation • Unit Test Cases sollten aus allen Ein- und Ausstiegskriterien bestehen • Einhaltung des Codes mit Codierungsstandards • NCP sollte gemäß der Richtlinie behandelt werden • Die Schritte des Konfigurationsmanagements sollten dem Konfigurationsmanagementplan entsprechen • Der Umgang mit Risiken sollte dem Risikomanagementplan entsprechen • Die Rauchprüfung besteht alle wichtigen Merkmale und Funktionen | Externe Kundenbedürfnisse • Fehlerfreie Software |
Unterstützende Prozesse • Zuweisung von Personal / Hardware / Software / Ressourcen • Hardware-Ausfallwartung • Schulung für Teammitglieder | Prozess endet mit • Durchführung von Rauch- / Sanity-Tests am freigegebenen Build | Effizienzparameter • Jede Einheit sollte die erste Testrunde bestehen • Aufgaben, die gemäß dem Projektplan ausgeführt werden müssen • Der Rauchtest sollte vor der Freigabe bestanden werden • Testen der Team-Leidenschaft zum Testen der Software |
Jedes Testteam sollte eine erstellen einzigartig Checkliste für Software-Release, gemäß der Domäne und Plattform der Software und der Projektmanagementmethode (wie Agile Scrum usw.) und gemäß dem manuellen / automatisierten Testframework, um den freigegebenen Build zu akzeptieren, bevor mit der Testausführung begonnen wird, um Zeit und Mühe zu sparen.
Dies ist einer der wichtigsten Effizienzparameter in der Testfreigabephase.
Verbesserung des Testfreigabeprozesses:
1) Überprüfen Sie den Release-Bericht Für die neue Funktionalität, Anpassung / Modifikation vorhandener Funktionen, Fehlerkorrekturen aus dem vorherigen Build, die entscheiden, mit der Ausführung des Rauchtests oder des Sanity-Tests oder einer Kombination aus beiden zu beginnen.
2) Überprüfen Sie das Update Dokumente testen gemäß der neuen Funktionalität und den Fehlerkorrekturen, falls nicht bereits aktualisiert. Normalerweise werden diese Dokumente während des Softwareentwicklungszyklus vom Testteam auf der Grundlage der regelmäßigen wöchentlichen Projektbesprechungen aktualisiert.
3) Überprüfen Sie das Software Build in Configuration Repository wird für die Build-Nummer, Versionsnummer, gekennzeichnet oder mit dem Versionsnamen gemäß den im Projektplan definierten Standards kommentiert. Stellen Sie außerdem sicher, dass der Build erfolgreich kompiliert und auf dem Testserver installiert wurde.
4) Planen Sie nach der Veröffentlichung eine kurze Projektbesprechung die Vor- und Nachteile des veröffentlichten Builds, bekannte Fehler und kritische Funktionen usw. zu diskutieren, Missverständnisse zu vermeiden und wichtige Kundenanforderungen zu überprüfen. Vermeiden Sie strikt jede mündliche Kommunikation zwischen den Entwicklungs- und Testteams, da dies die Qualität der Softwareversion stark beeinträchtigt.
5) Stellen Sie sicher, dass das Bug Tracking Tool ordnungsgemäß konfiguriert ist , für das zugewiesene Testteam und das Entwicklungsteam des Projekts, Software-Build- und Versionsnummern sowie die Module / Funktionen der Software, die dazu beitragen, die Fehler effizient zu protokollieren. Wenn nicht, sollte es mit hoher Priorität an den Projektmanager oder Testmanager weitergeleitet werden.
6) Senden Sie den Build an das Entwicklungsteam zurück ohne Kompromisse, wenn der Build in Smoke oder Sanity Testing fehlschlägt. Streng genommen sollte der Test nicht fortgesetzt werden, wenn das System beim Rauchtest fehlschlägt. Dies spart viel Zeit und Mühe und verbessert die Qualität der in den nachfolgenden Versionen veröffentlichten Software.
7) Planen Sie die Projektfreigabe am 1stWochentag Dies hilft dem Testmanager, den bevorstehenden Testzyklus basierend auf der Build-Stabilität zu planen und dem Projektmanager einen schnellen Testbericht zu senden, der die Qualität der Software frühzeitig steigert. Wenn das Entwicklungsteam die Projektfreigabe am Freitag plant, kann das Wochenende sowohl für Ausrutscher als auch für Buildprobleme in einem manuellen oder automatisierten Build-Framework verwendet werden.
8) Stellen Sie sicher, dass die Tester in der Domäne ordnungsgemäß geschult sind Dies hilft dem Testteam, den Testplan einzuhalten und Zeit für die nächste Testrunde zu sammeln. Außerdem sollte das Testteam geschult sein und mit der erforderlichen Technologie wie Scripting und SQL vertraut sein, wenn das Projekt White Boxing erfordert.
9) Vermeiden Sie die Zuweisung von Testern in mehreren Projekten Dies wirkt sich stark auf die Qualität der Testausführung in Echtzeit aus. In der Praxis übersehen sogar erfahrene Tester die Merkmale und Funktionen und überspringen die Testfälle unter der Annahme, dass einige Testfälle niemals fehlschlagen, wenn sie mit Arbeit überlastet oder mehreren Projekten mit Fristen zugewiesen werden.
10) Schätzen Sie das Testteam für seine Leidenschaft als Tester sollten nicht für den 'Tag' arbeiten oder 'Nenne es einen Tag' kommentieren. Wenn Software aus mehreren Modulen besteht und der Funktionalist vollständig oder teilweise integriert oder miteinander verbunden ist, sollten Tester die Leidenschaft haben, die Testfälle mit einer großen Abdeckung und Rückverfolgbarkeitsmatrix zu schreiben / auszuführen, um die Qualität der endgültigen Software / des Produkts zu gewährleisten. Denn selbst ein kosmetisches Problem ist ein „Fehler“ und wird als „1 Fehler“ gezählt.
elf) Stellen Sie sicher, dass die Softwareinstallation einfach und unkompliziert ist Dies hilft dem Testteam, die Software bei Bedarf neu zu installieren, anstatt darauf zu warten, dass der Entwicklungsmanager oder ein Installationsmanager denselben Job ausführt, wodurch die verfügbare Testzeit unnötig verkürzt wird. Obwohl die Installation auf Windows-Basis einfach ist, kann es jedoch Stunden dauern, bis die Software installiert ist, wenn mehrere Webserver und Weitverkehrsnetzwerke in einer mehrschichtigen Testumgebung beteiligt sind. Wenn die Software-Testabdeckungen und Installation, Deinstallation Bei Patches oder Aktualisierungen von Software wird der Prozess der Ausführung der Testfälle eher mit dem Testteam ausführlich besprochen.
12) Stellen Sie sicher, dass die automatisierten Tools mit Lizenz verfügbar sind für ein Framework für Automatisierungstests . Die Ausführung von Testfällen in einem automatisierten Framework ist im Vergleich zu einem manuellen Testszenario einfach, sofern die automatisierten Tools für mehrere Benutzer ordnungsgemäß konfiguriert und lizenziert sind. Insbesondere wenn der Testplan neben der regulären Ausführung von Testfällen und Regressionstests auch Leistungs- und Lasttests umfasst, sollten Tester die Ausführung von Testfällen in mehreren Umgebungen wie mehreren Servern, mehreren Browsern, mehreren Benutzern usw. abdecken.
13) Stellen Sie sicher, dass die Ghosted-Maschinen zum Testen eingerichtet sind vor dem Start der Testausführung. Geisterbilder sind Maschinen mit unterschiedlichen Testumgebungen. Beispielsweise kann eine Webanwendungssoftware zum Testen in mehreren Umgebungen wie Windows 7 und Access DB oder Windows 2008 und SQL Server oder Windows 8 und Oracle oder Mainframe und DB2 usw. mit allen Browsern wie Chrome, Firefox und Internet Explorer geplant werden , Safari etc., Einige 'Systemtests' Es ist sogar erforderlich, die Festplatte vollständig zu formatieren und eine neue Software zu installieren oder die vorhandene Software mit Patches und Updates usw. zu aktualisieren.
14) Vermeiden Sie die Implementierung der neuen Funktionen / Änderungsanforderung indem Sie die Testausführung stoppen und die Software erneut freigeben, um die Testphase erneut anzugeben. Dies ist in vielen Software-Organisationen gemäß den Geschäftsanforderungen eine sehr schlechte Praxis, um die externen Kunden zufrieden zu stellen oder zumindest die Anforderungen des Management-Lenkungsausschusses oder manchmal der Vertriebs- / Marketingteams zu erfüllen. Obwohl die Änderungsanforderungen der Kunden in einer „agilen“ Projektumgebung immer empfohlen werden, sollten sie vor der Freigabe der Software für das Testteam ordnungsgemäß geplant und implementiert werden.
Verwalten und Steuern des Inhalts der Testversion
Das Verwalten und Steuern des Inhalts der Testversion ist für jede IT-Software oder sogar für jede Nicht-IT-Softwareumgebung, die in der folgenden Abbildung dargestellt wird, am wichtigsten.
- Die Projektmanager und / oder der Projektlenkungsausschuss hängen von der Autorität der Organisationsmatrix ab und sind für die Auswahl des Inhalts für jede einzelne Version verantwortlich.
- Sobald die Fehler und / oder die neuen Funktionen und die Änderungsanforderung der Kunden identifiziert und genehmigt wurden, wird sie vom Entwicklungsteam implementiert, das den Projektbeteiligten vor Beginn der Entwicklung / Implementierung mitgeteilt werden sollte.
- Basierend auf der implementierten endgültigen Version aktualisiert das Testteam die zugehörigen Dokumente und bereitet sich entsprechend auf den Test vor.
- Das Testteam startet den Rauch- / Sanity-Test gemäß den im Release-Bericht definierten Anforderungen.
- Sobald die Sanity bestanden ist, startet das Testteam die Testausführung gemäß dem Zeitplan und den zugewiesenen Aufgaben, z. B. Funktionstests, Nichtfunktionstests, Sicherheitstests, Systemtests, Leistungstests, Lasttests, Benutzerakzeptanztests usw.
- Sobald die erste Runde des Testzyklus abgeschlossen ist, werden Testberichte an alle Beteiligten und den Manager des Entwicklungsteams gesendet, um die nächste Iteration der Testausführung zu planen.
- Abhängig vom Status der Testberichte sowie der Schwere und Komplexität der Fehler wird ein vollständiger Zyklus einer zweiten Runde der Testausführung oder des Regressionstests zusammen mit dem Benutzerakzeptanztest geplant.
- Nach Abschluss der geplanten Testausführungszyklen werden die Testberichte an alle Beteiligten des Projekts gesendet, um zu erfahren, ob die Features, Funktionen und Fehlerbehebungen bestanden / nicht bestanden / nicht bestanden wurden.
Beispielvorlage für Veröffentlichungsberichte:
Hinweis : Eine Beispielvorlage für MS Word für den Release-Bericht steht unten ebenfalls zum Download zur Verfügung.
Finden Sie unten ein “ Beispiel für einen Release-Bericht Dies behandelt die Hauptaspekte des Veröffentlichungsprozesses, der das Berufsleben des gesamten Projektteams viel glücklicher macht als je zuvor.
GPSNavigation_Release_Report_Ver_1.0.7_Release_14.0_Build_105.25.03
# 1) Geltungsbereich
Die GPS-Navigation für XYZ Company Limited wird für interne Tests freigegeben. Die veröffentlichte Version ist 1.0.7, die Versionsnummer ist 14.0 und die Build-Nummer 105.25.03. Diese Softwareversion enthält die neuen Funktionen und die wichtigsten Fehlerkorrekturen aus der vorherigen Version. Rauchtests werden bereits in der Entwicklungsphase bestanden, es ist jedoch ein Smoke & Sanity erforderlich, bevor Regressionstests durchgeführt werden können.
# 2) Referenzen
GPSNavigation_URD_1.0.12, GPSNavigation_FFD_2.17, GPSNavigation_BusinessUseCases_1.23.10, GPSNavigation_TestPlan_1.44, GPSNavigation_TestSuites_2.10, GPSNavigation_UnitTesting_23.3
# 3) Release-Beschreibung
Diese Version ist eine kontrollierte Version von GPS Navigation und enthält die folgenden Features und Funktionen.
Die mit * gekennzeichneten Funktionen sind in dieser Version neu.
Die folgenden Funktionen wurden in dieser Version nicht implementiert.
1. Modul 1
1.1 Funktion 1
1.1.1 Funktionalität 1
# 4) Konfigurationsmanagement
Wir verwenden Visual Source Safe als Konfigurationsmanagement-Tool. Der Build ist im folgenden Pfad verfügbar.
Interner Link: http://234.23.45.111/internalbuild/gpsnavigation/release1.0.13
Externer Link: https: // 234.23.45.111/externalbuild/gpsnavigation/release1.0.13
# 5) Installationsanweisungen und Schritte
Geben Sie die detaillierten Informationen für die Installation des Builds an das QA / Testing-Team weiter.
# 6) Probleme / Fehler behoben
Der Status der Fehler wird im Fehlerverfolgungssystem aktualisiert.
# 7) Zu behebende Probleme / Fehler
# 8) Ergebnisse
# 9) Bekannte Fehler / Probleme
# 10) Release Checkliste
Ja Nein / | Beschreibung | J / N. |
---|---|---|
ein | Wurden alle Dateien in Visual Source Safe überprüft? | |
zwei | Wurde das Etikett gemäß den internen Standards in den richtigen Ordner in VSS gelegt? | |
3 | Ist die Version in VSS als 'externe' / 'interne' Version identifizierbar? | |
4 | Wurde die Version in den Kommentaren in VSS erwähnt? | |
5 | Wurde in den Kommentaren eine kurze Beschreibung in VSS erwähnt? | |
6 | Code wurde überprüft und Codeüberprüfungsprobleme werden in Clear Quest? | |
8 | Unit-Test-Dokument wurde erstellt und überprüft? | |
9 | Unit-Testfälle ausgeführt und die Ergebnisse für den Status aktualisiert? | |
10 | Das aktualisierte Unit-Test-Falldokument ist in VSS verfügbar. | |
elf | Alle Clear Quest-Probleme für diese Version wurden behoben / geschlossen? | |
12 | Alle in VSS abgeschlossenen und aktualisierten Arbeitspaketaufgaben? | |
13 | Wird die Rauchprüfung durchgeführt und bestanden? |
=> Herunterladen:: Klicken Sie hier, um die Mustervorlage für Release-Berichte herunterzuladen im MS Word Format.
Fazit:
So verbessern Sie den Testfreigabeprozess kontinuierlich
Tipp 1) Richten Sie ein Release-Engineering-Team ein, das sich um die kritischen Faktoren für die Wartung der Software-Releases und -Erstellungen kümmert und für die zentralisierten Softwarekonfigurations-Managementsysteme verantwortlich ist.
Tipp 2) Motivieren und schätzen Sie die Projektteams, um den Prozess des Softwareentwicklungslebenszyklus, des Produktentwicklungslebenszyklus und des Software-Testlebenszyklus zu verfolgen. Wir können den Prozess definieren, aber bis und solange er nicht von den beteiligten Personen befolgt wird, kann der Prozess nicht definiert werden.
Tipp 3) Schätzen Sie den Testaufwand anhand der Erfahrungen und der Vorgeschichte. Das Schreiben von Testfällen unterscheidet sich grundlegend von der Ausführung derselben. Die Tester sollten verstehen, was zu testen ist, wie zu testen ist und wann zu testen ist. Andernfalls wird der Aufwand für den Testzyklus verschwendet, obwohl mehrere Testzyklusrunden stattgefunden haben.
Tipp 4) Wenn möglich und machbar, automatisieren Sie die Testphase mithilfe einiger allgemein anerkannter Testwerkzeuge. Die Verwendung automatisierter Build-Tools und automatisierter Test-Tools reduziert den Testaufwand um mehr als 50%, verbessert die Qualität der Software und stellt eine 100% ige Qualität sicher, wenn das Automatisierungs-Framework ordnungsgemäß entworfen wurde.
Tipp 5) Last but not least ist die Testfreigabe nicht nur eine Aufgabe, sondern eine Kunst, allen Beteiligten das Leben in einem Projekt einfacher und komfortabler zu machen.
Über den Autor: Balu A. ist ein erfahrener technofunktionaler IT-Experte mit über zwei Jahrzehnten Erfahrung in der IT-Software und einem Jahrzehnt Erfahrung im Projekt- und Testmanagement, der Unternehmensanwendungen und Mobilitätslösungen domänenübergreifend mit Microsoft-, Oracle-, Java- und Mobiltechnologien bereitstellt. Er ist im Grunde eine Führungskraft mit der Leidenschaft, Menschen zu Führungspersönlichkeiten mit der richtigen Einstellung zu fördern. Er liebt es, in einem prozessorientierten Umfeld zu arbeiten und glaubt, dass der Prozess die Effizienz, Qualität und Produktivität der Mitarbeiter verbessert.
Imnächstes Tutorialwerden wir lernen - wie es geht Verbessern Sie die Effizienz von Testfällen.
Teilen Sie uns Ihre Gedanken / Fragen in den Kommentaren unten mit.
Haben Sie eine Software-Version gemäß dem Prozess!
Schließen Sie die Tests termingerecht mit großer Produktivität und Anstrengung ab!
Versuchen Sie, eine fehlerfreie, qualitätsgesicherte Softwarebereitstellung zu erreichen !!!
Wenn Ihnen dieser Artikel gefällt, können Sie ihn mit Ihren Freunden teilen!
Literatur-Empfehlungen
- Softwaretestkurs: An welchem Softwaretestinstitut soll ich teilnehmen?
- Beste Software-Test-Tools 2021 [QA Test Automation Tools]
- Software Testing QA Assistant Job
- Was ist Affentest beim Softwaretest?
- Wählen Sie Software-Tests als Ihre Karriere
- Software Testing Technical Content Writer Freiberufler Job
- Beispiel für einen Fehlerbericht
- Praktischer Softwaretest QS-Prozessablauf (Anforderungen an die Freigabe)