Scrum beim Testen von Software
Scrum in Software Testing ist eine Methode zum Erstellen komplexer Softwareanwendungen. Es bietet einfache Lösungen für die Ausführung komplizierter Aufgaben. Scrum hilft dem Entwicklungsteam, sich auf alle Aspekte der Softwareproduktentwicklung wie Qualität, Leistung, Benutzerfreundlichkeit usw. zu konzentrieren. Es bietet Transparenz, Inspektion und Anpassung während der Softwareentwicklung, um Komplexität zu vermeiden.
Scrum-Test
Scrum Testing ist ein Test, der in der Scrum-Methodik durchgeführt wird, um zu überprüfen, ob die Anforderungen der Softwareanwendung erfüllt sind. Dabei werden nicht funktionierende Parameter wie Sicherheit, Benutzerfreundlichkeit, Leistung usw. überprüft. Der Tester spielt keine aktive Rolle im Prozess, daher wird er normalerweise von Entwicklern mit Unit Test durchgeführt. Manchmal werden je nach Art und Komplexität des Projekts dedizierte Testteams benötigt.
In diesem Tutorial lernen Sie:
- Was ist Scrum?
- Hauptmerkmale der Scrum-Methodik
- Rollen in Scrum
- Scrum-Artefakte
- Zeremonien (Prozesse) in Scrum
- Rolle des Testers in Scrum
- Testaktivitäten in Scrum
- Testberichterstattung
Hauptmerkmale der Scrum-Methodik
Im Folgenden finden Sie die wichtigsten Funktionen von Scrum-
- Scrum hat einen kurzen festen Zeitplan für Release-Zyklen mit einstellbarem Umfang, die als Sprints bezeichnet werden , um sich schnell ändernden Entwicklungsanforderungen gerecht zu werden. Jede Veröffentlichung kann mehrere Sprints haben. Jedes Scrum-Projekt kann mehrere Release-Zyklen haben.
- Eine sich wiederholende Abfolge von Besprechungen, Ereignissen und Meilensteinen
- Eine Praxis zum Testen und Implementieren neuer Anforderungen, die als Storys bezeichnet werden , um sicherzustellen, dass nach jedem Sprint einige Arbeiten fertig sind
Scrum basiert auf den folgenden 3 Säulen:
Schauen wir uns das eins nach dem anderen an
1. Rollen in Scrum
Beim Scrum-Testen gibt es drei Hauptrollen: Product Owner, Scrum Master und The Development Team. Lassen Sie uns sie im Detail studieren
Product Owner |
Scrum Master |
Die Mannschaft |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2. Scrum-Artefakte
Ein Scrum-Prozess beinhaltet
- User Stories: Sie sind eine kurze Erklärung der Funktionen des zu testenden Systems. Beispiel für Versicherer ist - "Prämie kann über das Online-System bezahlt werden."
- Product Backlog: Dies ist eine Sammlung von User Stories, die für ein Scrum-Produkt erfasst wurden. Der Product Owner bereitet den Product Backlog vor und pflegt ihn. Es wird vom Product Owner priorisiert, und jeder kann es mit Zustimmung des Product Owners ergänzen.
- Release-Backlog: Ein Release ist ein Zeitrahmen, in dem die Anzahl der Iterationen abgeschlossen ist. Der Product Owner koordiniert mit dem Scrum Master, um zu entscheiden, welche Storys für eine Veröffentlichung ausgewählt werden sollen. Geschichten im Release-Backlog sollen in einem Release vervollständigt werden.
- Sprints: Es ist ein festgelegter Zeitraum, um die vom Product Owner und Entwicklerteam festgelegten User Stories fertigzustellen, normalerweise 2-4 Wochen.
- Sprint-Backlog: Es handelt sich um eine Reihe von User Stories, die in einem Sprint abgeschlossen werden müssen. Während des Sprint-Rückstands wird niemals Arbeit zugewiesen, und das Team meldet sich selbstständig für die Arbeit an. Es gehört dem Team und wird von ihm verwaltet, während die geschätzte verbleibende Arbeit täglich aktualisiert wird. Dies ist die Liste der Aufgaben, die im Sprint ausgeführt werden müssen
- Blockliste: Dies ist eine Liste von Blöcken und nicht getroffenen Entscheidungen, die dem Scrum Master gehören und täglich aktualisiert werden
- Burndown-Diagramm: Das Burndown-Diagramm zeigt den Gesamtfortschritt der laufenden und während des gesamten Prozesses abgeschlossenen Arbeiten. Es stellt in einem Diagrammformat die nicht abgeschlossenen Storys und Features dar
3. Zeremonien (Prozesse) in Scrum
- Sprint-Planung: Ein Sprint beginnt damit, dass das Team Storys aus dem Release-Backlog in das Sprint-Backlog importiert. Es wird von Scrum Master gehostet. Die Tester schätzen den Aufwand zum Testen der verschiedenen Storys im Sprint Backlog.
- Tägliches Scrum: Es wird vom Scrum Master gehostet und dauert ca. 15 Minuten. Während des Daily Scrum besprechen die Mitglieder die am Vortag abgeschlossenen Arbeiten, die geplanten Arbeiten für den nächsten Tag und die Probleme, die während eines Sprints auftreten. Während des täglichen Stand-up-Meetings wird der Fortschritt des Teams verfolgt.
- Sprint Review / Retrospektive: Es wird auch vom Scrum Master gehostet, dauert ca. 2-4 Stunden und bespricht, was das Team im letzten Sprint erreicht hat und welche Lehren daraus gezogen wurden.
Rolle des Testers in Scrum
Es gibt keine aktive Rolle des Testers im Scrum- Prozess. Normalerweise wird das Testen von einem Entwickler mit Unit Test durchgeführt. Während jedes Sprints ist der Product Owner auch häufig in den Testprozess involviert. Einige Scrum-Projekte haben je nach Art und Komplexität des Projekts spezielle Testteams .
Die nächste Frage ist, was Tester in einem Scrum tun? Der folgende Hinweis wird antworten
Testaktivitäten in Scrum
Tester führen in den verschiedenen Phasen von Scrum folgende Aktivitäten durch:
Sprintplanung
- Bei der Sprintplanung sollte ein Tester eine User Story aus dem zu testenden Product Backlog auswählen.
- Als Tester sollte er / sie entscheiden, wie viele Stunden (Aufwandsschätzung) benötigt werden, um den Test für jede der ausgewählten User Stories abzuschließen.
- Als Tester muss er / sie wissen, was Sprintziele sind.
- Tragen Sie als Tester zum Priorisierungsprozess bei
Sprint
- Unterstützung von Entwicklern beim Testen von Einheiten
- Testen Sie die User Story, wenn Sie fertig sind. Die Testausführung wird in einem Labor durchgeführt, in dem sowohl Tester als auch Entwickler Hand in Hand arbeiten. Fehler werden im Fehlermanagement-Tool protokolliert und täglich nachverfolgt. Fehler können während des Scrum-Meetings übertragen und analysiert werden. Fehler werden erneut getestet, sobald sie behoben und zum Testen bereitgestellt wurden
- Als Tester nimmt er / sie an allen täglichen Standup-Meetings teil, um sich zu äußern
- Als Tester kann er / sie jedes Backlog-Element, das im aktuellen Sprint nicht abgeschlossen werden kann, mitbringen und zum nächsten Sprint bringen
- Der Tester ist für die Entwicklung von Automatisierungsskripten verantwortlich. Er plant Automatisierungstests mit dem Continuous Integration (CI) -System. Die Automatisierung gewinnt aufgrund kurzer Lieferfristen an Bedeutung. Die Testautomatisierung kann mithilfe verschiedener auf dem Markt verfügbarer Open Source- oder kostenpflichtiger Tools durchgeführt werden. Dies erweist sich als wirksam, um sicherzustellen, dass alles abgedeckt wird, was getestet werden muss. Eine ausreichende Testabdeckung kann durch eine enge Kommunikation mit dem Team erreicht werden.
- Überprüfen Sie die Ergebnisse der CI-Automatisierung und senden Sie Berichte an die Stakeholder
- Ausführen von nicht funktionalen Tests für genehmigte User Stories
- Koordinieren Sie mit dem Kunden und dem Produktbesitzer, um Akzeptanzkriterien für Abnahmetests zu definieren
- Am Ende des Sprints führt der Tester in einigen Fällen auch Abnahmetests (UAT) durch und bestätigt die Vollständigkeit der Tests für den aktuellen Sprint
Sprint Retrospektive
- Als Tester wird er herausfinden, was im aktuellen Sprint schief gelaufen ist und was richtig gelaufen ist
- Als Tester identifiziert er die gewonnenen Erkenntnisse und Best Practices
Testberichterstattung
Die Berichterstattung über Scrum Test-Metriken bietet den Stakeholdern Transparenz und Transparenz über das Projekt. Die gemeldeten Metriken ermöglichen es einem Team, ihren Fortschritt zu analysieren und seine zukünftige Strategie zur Verbesserung des Produkts zu planen. Es gibt zwei Metriken, die häufig zum Berichten verwendet werden.
Burn-Down-Diagramm: Scrum Master zeichnet jeden Tag die geschätzte verbleibende Arbeit für den Sprint auf. Dies ist nichts anderes als das Burn Down Chart. Es wird täglich aktualisiert.
Ein Burndown-Diagramm gibt einen schnellen Überblick über den Projektfortschritt. Dieses Diagramm enthält Informationen wie den Gesamtaufwand im Projekt, der abgeschlossen werden muss, den Arbeitsaufwand während jedes Sprints usw.
Geschwindigkeitsverlaufsdiagramm: Das Geschwindigkeitsverlaufsdiagramm sagt die Geschwindigkeit des Teams voraus, die in jedem Sprint erreicht wurde. Es ist ein Balkendiagramm und zeigt, wie sich die Teamleistung im Laufe der Zeit verändert hat.
Die zusätzlichen Metriken, die nützlich sein können, sind Zeitplanbrand, Budgetbrand, prozentualer Abschluss des Themas, abgeschlossene Storys - verbleibende Storys und so weiter.
Haben Sie Tipps oder Erfahrungen für Scrum-Tests? Hinterlasse unten einen Kommentar