Workflow von der Entwicklung bis zum Testen und Zusammenführen

Ich versuche, den Entwicklungsworkflow zu formalisieren, und hier ist der erste Entwurf. Begrüßen Sie Vorschläge zum Prozess und alle Optimierungen. Ich bin ziemlich neu in der Einrichtung der Prozesse und würde mich über Feedback dazu freuen. PS: Wir arbeiten an einer AWS Serverless-Anwendung.

Erstellen Sie einen Issue-Link in JIRA - wird getestet von. Der Link 'getestet von' hat außer der korrekten Anzeige des Zusammenhangs beim Betrachten der Story keine Bedeutung.

Erstellen Sie einen neuen Vorgangstyp in JIRA - Testcase. Dieser Problemtyp sollte einige benutzerdefinierte Felder enthalten, um den Testfall vollständig zu beschreiben.

Für jede User Story gibt es eine Reihe von Testfällen, die über die Verknüpfungsfunktion von Jira mit der User Story verknüpft werden. Die Testfälle werden von der QA definiert.

Die Integrations-/e2e-Testfälle werden im selben Zweig wie der Entwickler geschrieben. E2E-Testfälle werden in einem separaten Zweig geschrieben, da es sich um ein separates Repository handelt (zur Diskussion offen).

Der Problemtyp „Testfall“ sollte auch einem Workflow zugeordnet werden, der sich von den Status „Neu“ => „Wird getestet“ => „Erfolg/Fehler“ bewegt

Darüber hinaus könnten wir erwägen, dem CI-System eine Funktion hinzuzufügen, um den Testfall automatisch auf „Erfolgreich“ zu verschieben, wenn der Testfall im CI bestanden wird. (Dies sollte durch die Verwendung von JIRA API möglich sein). Dies ist völlig optional und wir werden es höchstwahrscheinlich manuell tun.

Wenn alle auf eine User Story bezogenen Testfälle erfolgreich verlaufen sind, kann die User Story nach Done verschoben werden.

Ein paar Punkte zu beachten:

Wir werden auch https://marketplace.atlassian.com/apps/1222843/aio-tests-test-management-for-jira für das Testmanagement und die Verknüpfung verwenden .

Die QA sollte vom ersten Tag an am Feature-Branch arbeiten, um die Testfälle hinzuzufügen. Die Arbeit im selben Zweig ermöglicht es der QA und dem Entwickler, immer synchron zu sein. Dies sollte sicherstellen, dass der Entwickler nicht daran gehindert wird, darauf zu warten, dass die Testfälle abgeschlossen werden, damit der Zweig mit der Entwicklung zusammengeführt wird.

Der Feature-Branch wird überprüft, wenn der Pull-Request vom Entwickler erstellt wird. Damit soll sichergestellt werden, dass die Überprüfung nicht anhängig ist, bis die Testfälle entwickelt/bestanden sind. Dies sollte mit schnellem Feedback helfen.

Der Fokus liegt hier auf dem „funktionsorientierten QA“-Prozess, um sicherzustellen, dass der Develop-Branch immer releasefähig ist und dass nur gut getesteter Code in den Develop-Branch gemergt wird.

Antworten (1)

Die meisten Ihrer vorgeschlagenen Arbeitsabläufe sehen in Ordnung aus, aber es gibt eine Sache, die Sie beißen wird.

Der Problemtyp „Testfall“ sollte auch einem Workflow zugeordnet werden, der sich von den Status „Neu“ => „Wird getestet“ => „Erfolg/Fehler“ bewegt

Nein. Ein Testfall sollte einen Workflow wie Neu => Wird geschrieben => Bereit zur Ausführung haben.

Daneben sollten Sie einen zusätzlichen Vorgangstyp „Testfallausführung“ mit dem von Ihnen vorgeschlagenen Workflow verwenden. Die Testfallausführungsvorgänge zeichnen die Ergebnisse der Ausführung eines oder mehrerer zugehöriger Testfälle auf. Der Vorteil besteht darin, dass Sie, wenn Sie das CI-System Regressionstests ausführen lassen, einfach neue Testfall-Ausführungstickets erstellen können, um die Ergebnisse jedes Laufs aufzuzeichnen, ohne den Verlauf früherer Testausführungen zu verlieren.

Die Regel zum Schließen einer Story wäre dann, dass sie eine Testfallausführung hat, die zeigt, dass alle Tests bestanden wurden.

Bevor Sie mit dem manuellen Hinzufügen neuer testbezogener Problemtypen beginnen, überprüfen Sie außerdem, welche Problemtypen AIO Tests für Sie zu Jira hinzufügt.

Ich bin mit AIO nicht vertraut, aber ähnliche Tools verarbeiten Testausführungen ohne Problemtypen. Ein Testproblemtyp ist an 0 oder mehr Ausführungen in verschiedenen Zuständen gebunden, die vom Tool verwaltet werden. Wenn man sich die Dokumente ansieht, scheint es, dass AIO ähnlich ist. Aber der Rest ist genau richtig, insbesondere die Integration Ihres Build-Servers in Ihre Testausführungen, um automatisch automatisierte Testausführungen gegen Builds zu verfolgen und aufzuzeichnen.
Ich kenne mich auch nicht mit AIO aus, da wir XRay verwenden. XRay verwendet Problemtypen für Testausführungen. Ich glaube, dass in Jira fast alles, was Sie eindeutig identifiziert haben möchten, ein Problem der einen oder anderen Art sein muss.
Interessant. Ich bin mit Zephyr vertraut, das Testausführungsdaten im Zephyr-Dienst speichert. Sie haben eine benutzerdefinierte Feldintegration, die Daten von ihren Servern lädt. Der einzige Vorgangstyp, den Sie benötigen, ist „Test“, der in Jira enthalten ist. Informationen zu Testschritten, Testzyklen und Testausführungen befinden sich vollständig außerhalb von Jira. Es hört sich so an, als würden verschiedene Tools unterschiedliche Strategien verwenden, daher ist es ein Muss, das Tool frühzeitig einzusetzen und seine Fähigkeiten zu verstehen, bevor Problemtypen und Beziehungen und Workflows hinzugefügt werden.