Dies ist ziemlich häufig, wenn nicht typisch. Um einige Fragen zu beantworten:
- Was sollte der richtige Ansatz sein, um Aktivitäten in solchen Szenarien zu verfolgen?
- Werden Funktionen ohne Qualitätssicherung, aber mit Fehlern ausgeführt?
- Wie kann ich die Bemühungen nahtlos verfolgen?
- Sollte das Testen Teil von "Done Definition" sein?
- Was sind die Fallstricke, wenn dies nicht der Fall ist?
Ich würde einen Gesamtansatz verfolgen, der:
- ermöglicht es den Testern, Mehrwert zu schaffen
- gibt ihnen Autorität
- maximiert ihren Wert
- ermutigt QS-Leute, Entwickler auszubilden
und um das zu tun (und Ihre Fragen zu beantworten) würde ich:
- Stellen Sie sicher, dass sie Fehler in einem benutzerfreundlichen Fehlerverfolgungssystem eingeben können, das auch Funktionen wie Jira, Trello, Pivotal Tracker usw. enthält.
Stellen Sie sicher, dass sie darin geschult sind, gute Fehlerberichte zu erstellen, die Folgendes beschreiben:
- Schritte zum Reproduzieren
- Anfangs- / Einrichtungswerte
- eingegebene Werte
- Screenshots, falls zutreffend
- Serverprotokolle, falls zutreffend
- Stellen Sie sicher, dass Fehler zugewiesen, bearbeitet und abgeschlossen werden.
- schulen Sie sie in Best Practices und senden Sie sie an Konferenzen.
- Trainieren Sie sie in der Programmierung und Verwendung eines Test-Frameworks.
- Ermöglichen Sie ihnen, Programmierern gute Ansätze und Denkweisen zum Testen beizubringen.
Ja, einige Funktionen können auch ohne Qualitätssicherung, aber mit Fehlern ausgeführt werden. Ich finde oft, dass QS ein zweiter Satz Augen ist. Manchmal kann diese Rolle von einem anderen Entwickler besetzt werden. Persönlich finde ich, dass dies einige Fehler findet, aber nicht alle, die eine andere QS-Denkweise finden könnte.
Das Testen sollte Teil der Durchführung sein, dies bedeutet jedoch nicht, dass die QS-Person die Prüfung durchführen muss. Angesichts der Ressourcenknappheit und einer agilen Umgebung, in der die von der Qualitätssicherung festgelegten Spezifikationen vermieden werden, muss die Qualitätssicherung in das Erlernen der Benutzerdomäne, das Entwerfen von Besprechungen, Besprechungen zur Punktpflege, Stand-ups, Rückblicke usw. einbezogen werden.
Verwenden Sie für die große Frage der Teststrategie die agilen Testquadranten, um sich zu orientieren:
|
Integrated | Performance
_________________________________________
|
Unit | Exploratory
Die Entwickler führen möglicherweise bereits Unit-Tests durch. Ein wichtiger Bereich, den die Qualitätssicherung durch die Abdeckung steigern kann, ist das integrierte Testen und die Verwendung der UI-Automatisierung. Gute Erkundungstests sind ebenfalls sehr wertvoll - es geht nicht nur darum, auf jeden Link auf der Seite zu klicken, sondern auch darum, die Domäne der Endbenutzer kennenzulernen und zu erfahren, was die Verwendung der Anwendung für sie bedeutet.
Berücksichtigen Sie für das Verhältnis von Qualitätssicherung zu Testern auch das Testdreieck:
Exploratory
Integrated Tests
Individual Unit Tests
wobei ein explorativer oder integrierter Test Dutzende, wenn nicht Hunderte von Komponententests darstellen kann, indem der gesamte "Stapel" ausgeübt wird.
Denken Sie auch daran, dass es wie in agilen Teams im Allgemeinen einen Ansatz geben sollte, bei dem jeder codieren und testen kann. Der Schlüssel ist natürlich, den Leuten die Anleitung und Struktur zu geben, damit sie das tun können, was benötigt wird, und ihnen Schulungen für den anderen Bereich zu geben.
In Bezug auf das tatsächliche Verhältnis bin ich nicht einverstanden mit der Genauigkeit von Davids Antwort von 3: 1 oder 4: 1. In einigen Organisationen, in denen Entwickler gute Unit- und integrierte Tests schreiben, ist es möglicherweise in Ordnung, 7: 1 in einer Organisation mit sehr wenig zu sein Von Entwicklern durchgeführte Tests müssen möglicherweise 1: 1 durchgeführt werden. Dies hängt wirklich von der Organisation, Struktur, dem Wissen, der Branche usw. ab.