Agiles Testen - Methoden
Beim agilen Testen stammen die häufig verwendeten Testmethoden aus den traditionellen Praktiken und orientieren sich am Prinzip - Früh testen. Die Testfälle werden geschrieben, bevor der Code geschrieben wird. Der Schwerpunkt liegt auf der Fehlervermeidung, -erkennung und -beseitigung, wobei die richtigen Testtypen zur richtigen Zeit und auf der richtigen Ebene ausgeführt werden.
In diesem Kapitel erhalten Sie einen Einblick in die Methoden -
- Test Driven Development (TDD)
- Akzeptanztestgesteuerte Entwicklung (ATDD)
- Verhaltensorientierte Entwicklung (BDD)
Testgetriebene Entwicklung
Bei der TDD-Methode (Test Driven Development) wird der Code auf der Grundlage des Testfirst-Ansatzes entwickelt, der von automatisierten Testfällen gesteuert wird. Ein Testfall wird zuerst geschrieben, um fehlzuschlagen. Darauf aufbauend wird Code entwickelt, um sicherzustellen, dass der Test bestanden wird. Die Methode wird wiederholt, das Refactoring erfolgt durch die Entwicklung von Code.
TDD kann mit Hilfe der folgenden Schritte verstanden werden:
Step 1 - Schreiben Sie einen Testfall, um das erwartete Verhalten der Funktionalität des zu schreibenden Codes widerzuspiegeln.
Step 2- Führen Sie den Test aus. Der Test schlägt fehl, da der Code noch nicht entwickelt wurde.
Step 3 - Entwickeln Sie Code basierend auf dem Testfall.
Step 4- Führen Sie den Test erneut aus. Diesmal muss der Test bestanden werden, da die Funktionalität codiert ist. Wiederholen Sie Schritt (3) und Schritt (4), bis der Test bestanden ist.
Step 5 - Den Code umgestalten.
Step 6 - Führen Sie den Test erneut durch, um sicherzustellen, dass er erfolgreich ist.
Wiederholen Step 1 – Step 6Hinzufügen von Testfällen zum Hinzufügen von Funktionen. Die hinzugefügten Tests und die früheren Tests werden jedes Mal ausgeführt, um sicherzustellen, dass der Code wie erwartet ausgeführt wird. Um diesen Prozess zu beschleunigen, werden Tests automatisiert.
Die Tests können auf Einheiten-, Integrations- oder Systemebene durchgeführt werden. Die ständige Kommunikation zwischen Testern und Entwicklern muss gewährleistet sein.
Akzeptanztestgesteuerte Entwicklung
Bei der ATDD-Methode (Acceptance Test Driven Development) wird der Code auf der Grundlage des Test-First-Ansatzes entwickelt, der von Acceptance Test Cases gesteuert wird. Der Fokus liegt auf den Akzeptanzkriterien und den Akzeptanztestfällen, die von den Testern während der Erstellung der User Story in Zusammenarbeit mit dem Kunden, den Endbenutzern und den relevanten Stakeholdern geschrieben wurden.
Step 1 - Schreiben Sie in Zusammenarbeit mit dem Kunden und den Benutzern Akzeptanztestfälle zusammen mit User Stories.
Step 2 - Definieren Sie die zugehörigen Akzeptanzkriterien.
Step 3 - Entwickeln Sie Code basierend auf den Abnahmetests und Abnahmekriterien.
Step 4 - Führen Sie die Abnahmetests durch, um sicherzustellen, dass der Code wie erwartet ausgeführt wird.
Step 5- Automatisieren Sie die Abnahmetests. WiederholenStep 3 – Step 5 bis alle User Stories in der Iteration implementiert sind.
Step 6 - Automatisieren Sie die Regressionstests.
Step 7 - Führen Sie die automatisierten Regressionstests durch, um eine kontinuierliche Regression sicherzustellen.
Verhaltensorientierte Entwicklung (BDD)
Behavior Driven Development (BDD) ähnelt der Test Driven Development (TDD), und der Schwerpunkt liegt auf dem Testen des Codes, um das erwartete Verhalten des Systems sicherzustellen.
In BDD wird eine Sprache wie Englisch verwendet, damit sie für Benutzer, Tester und Entwickler sinnvoll ist. Es sorgt dafür -
- Kontinuierliche Kommunikation zwischen Anwendern, Testern und Entwicklern.
- Transparenz darüber, was entwickelt und getestet wird.