Im Allgemeinen beschreibt 'agil' die Fähigkeit eines Einzelnen oder eines Teams, zu innovieren und sich an Veränderungen anzupassen, die jedes Jahr schneller werden. Agilität bedeutet, das Umfeld zu verstehen, in dem man sich befindet, alle Herausforderungen zu erkennen und festzustellen, welche Schritte erforderlich sind, um diesen schnell zu begegnen und erfolgreich zu sein.
Heute wird der Begriff 'Agil' am häufigsten mit Softwareentwicklung als Projektmanagement-Methodik in Verbindung gebracht. Zu Beginn der Softwareentwicklung folgten Teams der Wasserfall-Softwareentwicklungsmethode. Diese Methode bedeutete, dass zunächst die gesamte Entwicklungs-arbeit erledigt wurde, um ein fertiges Produkt zu erstellen, und erst danach das Testen durchgeführt wurde.
Mit dem Aufkommen der agilen Prinzipien ist das Testen zu einem wichtigen Bestandteil des Entwicklungsprozesses geworden und hat die gesamte Entwicklung revolutioniert. Anstatt das Produkt erst am Ende zu testen, wurde das Testen von Anfang an eingeführt. Mit der Einführung der agilen Arbeitsweise bewegte sich alles häufiger, um den erhöhten Marktveränderungen gerecht zu werden.
Die agile Arbeitsweise beeinflusst auch die Perspektive des Teams, indem sie Änderungen in den Anforderungen willkommen heißt. Um dem Team Zeit für all dies zu geben, tendiert das Agile dazu, weniger Dokumentation und mehr Raum für Anpassungen an Veränderungen zu haben.
Im Zentrum des agilen Ansatzes steht die Erfüllung der Bedürfnisse des Kunden. Daher arbeiten agile Teams direkt mit Kunden zusammen, um frühzeitig Feedback zu erhalten in jedem Iterationsschritt. Durch die frühzeitige Rückmeldung kann sich das agile Team sicher sein, dass die Anforderungen gut verstanden und umgesetzt werden, und dass die Software auf dem richtigen Weg ist.
Ein weiterer wichtiger Aspekt des agilen Testens ist die kontinuierliche Integration und kontinuierliche Bereitstellung (CI/CD). Bei der kontinuierlichen Integration integrieren Entwickler alle Änderungen, die sie im Laufe des Tages am Code vorgenommen haben, in ein gemeinsames Repository. Der nächste Schritt ist das kontinuierliche Testen des Produkts, was agilen Testern ermöglicht, Fehler frühzeitig im Entwicklungsprozess zu entdecken.