Funktionstests sind sehr wichtig. Ja, sie brauchen Zeit zum Schreiben, aber wenn Sie die richtigen Funktionstests schreiben, werden sie sich mehr als lohnen.
Es gibt einige gute Gründe, automatisierte Funktionstests für eine Anwendung durchzuführen.
- Wenn eine neue Funktion zu Ihrer Website hinzugefügt wird, werden Sie sofort informiert, wenn Änderungen an dieser neuen Funktion andere Funktionen auf Ihrer Website beeinträchtigen.
- Es ist dokumentiertes Wissen darüber, wie die Anwendung ausgeführt wird und wie sie zusammenarbeitet, um die Geschäftsanforderungen zu erfüllen.
- Wenn eine Bibliothek eines Drittanbieters aktualisiert werden muss, können Sie diese aktualisieren und Ihre Funktionstestsuite ausführen, um festzustellen, ob Probleme auftreten. Anstatt jede Seite selbst durchgehen zu müssen, können Sie sich von einem Computer eine Liste aller durchgebrochenen Tests erstellen lassen.
- Belastungstest! Sie können Tausende gleichzeitiger Benutzer simulieren, die alle gleichzeitig auf Ihre Website zugreifen, und Sie können sehen, wo Ihre Website langsamer wird und sich unter dem Druck verbiegt. Sie können sehen, wie sich Ihre Website verhält, lange bevor Sie spät abends einen Anruf erhalten, bei dem die Website abgestürzt ist.
- Die manuelle Durchführung von Funktionstests erfordert Zeit. Ja, das Schreiben der Fälle dauert lange, aber wenn Sie sich mit einem Binder mit 500 Seiten an Tests hinsetzen müssten, bevor Sie das Produkt versenden könnten, hätten Sie sich die automatisierten Tests gewünscht!
- Testdokumente sind schnell veraltet. Wenn eine neue Funktion hinzugefügt wird, müssen Sie sicherstellen, dass das Haupttestdokument aktualisiert wird. Wenn jemand einige Tests überspringt, kriechen plötzlich Bugs in Seiten, die "fertig und getestet" sind. Momentan arbeite ich in einer solchen Umgebung und ich kann Ihnen versichern, dass dies ein Albtraum ist.
Letztendlich braucht es ja Zeit, um diese Fälle zu schreiben, aber Sie sollten stolz darauf sein, sie zu schreiben. Dies ist Ihre Art zu beweisen, dass Ihr Code zweifelsohne funktioniert und dass er mit allen anderen Funktionen funktioniert. Wenn QA zu Ihnen kommt und einen Fehler meldet, beheben Sie diesen und fügen ihn Ihrer Testsuite hinzu, um zu zeigen, dass er behoben ist, und um sicherzustellen, dass er nie wieder auftritt.
Es ist dein Sicherheitsnetz. Wenn jemand hereinkommt und einen gespeicherten Prozess überfällt und eine kleine Änderung vornimmt, damit er mit seinem Code funktioniert, stellen Sie fest, dass er drei andere Funktionen in diesem Prozess nicht mehr unterstützt. Sie werden es in dieser Nacht und nicht in der Nacht vor dem Abgabetermin fangen!
Wie zum Schreiben von Funktionstests für nur systemkritische Funktionen. Das gibt dir nicht das ganze Bild und es wird ermöglichen, dass sich Bugs durchschleichen. Es ist nur eine kleine Funktion erforderlich, die nicht systemkritisch ist, sondern indirekt mit einer systemkritischen Funktion interagiert, und es besteht die Möglichkeit, dass ein Fehler auftritt.