Der Entwickler sollte die ersten Tests durchführen, damit wir wissen, dass das von uns codierte Teil den Anforderungen entsprechend so funktioniert, wie es erwartet wird. Also haben wir die normalen Tests durchgeführt und Unit Tests für den Code geschrieben, den wir geschrieben haben.
Der nächste Schritt ist die Aufgabe der QAs, herauszufinden, was die Entwickler beim Schreiben des Codes nicht sehen. Ein Entwickler denkt auf einer höheren Ebene, aber der Benutzer denkt möglicherweise nicht auf derselben Ebene. Wenn der Entwickler sein Stück testet und Text in ein Textfeld eingeben muss, gibt er möglicherweise immer eine Zeichenfolge ein, die denkt, dass der Benutzer dies auch tun würde. Möglicherweise macht der Benutzer das auch, aber wenn er zufällig ein Sonderzeichen wie% & $ ^ in den Text eingibt und die Anwendung dadurch beschädigt wird, sieht es für den Endbenutzer nicht gut aus. Ein Entwickler kann und wird nicht über alle Möglichkeiten nachdenken, die eintreten könnten, weil er nicht dazu ausgebildet ist, so zu denken. Wenn es um einen QA (Tester) geht, denken sie immer darüber nach, was der Benutzer tun könnte, um diese Anwendung zu beschädigen, und versuchen jedes dumme Ding im Buch. Nicht die Benutzer sind dumm, aber wir sollten nichts dem Zufall überlassen.
Jetzt müssen wir auch verstehen, dass im Allgemeinen mehr als ein Stück zur gleichen Zeit hergestellt wird und beide in Produktion gehen. Der Entwickler konnte nur sein Teil testen und denkt, dass dies gut funktioniert, aber der allgemeine Regressionstest muss für alle Teile durchgeführt werden, die verschoben werden, und er muss herausfinden, dass die Kombination von zwei verschiedenen Teilen die Anwendung beschädigen kann sieht auch nicht gut aus. Wir müssen auch die Lasttestszenarien und andere Dinge berücksichtigen, mit denen die Tester besser vertraut sind.
Schließlich müssen wir UAT (User Acceptance Test) durchgehen, um zu sehen, ob das Stück, das wir gemacht haben, das ist, was erwartet wird. Obwohl die Anforderungen durch die BAs gehen, weiß die endgültige Person möglicherweise nicht genau, wie es aussieht, und sie denkt möglicherweise, dass es nicht den Erwartungen entspricht, oder sie möchte möglicherweise etwas anderes hinzufügen, damit es besser aussieht, oder aus irgendeinem Grund ganzes Stück, da sie denken, das Stück würde nicht mit der bereits verfügbaren Funktionalität gehen.
Wie oben erläutert, sind diese sehr wichtig und können nicht vom Entwickler alleine ausgeführt werden. Sie sind unbedingt erforderlich, damit die Anwendung ordnungsgemäß funktioniert. Das Management kann sagen, dass dies ein konservativer Ansatz ist, aber es ist der bessere Ansatz. Wir können einige Anpassungen an dem oben Gesagten vornehmen, aber insgesamt nicht vermeiden.