Der Job eines Testers ist ein technischer, der spezielle Fähigkeiten erfordert. Es ist daher offensichtlich, dass Tester mit Herausforderungen konfrontiert sind, die mit der technischen Natur des Testens oder bestimmter Aktivitäten zusammenhängen.
Wie jeder andere Job ist das Testen jedoch nicht auf rein technische Angelegenheiten beschränkt! Dies gilt umso mehr für das Testen, wo Tester mit einer Vielzahl von Menschen mit unterschiedlichem Hintergrund über Konzepte wie Qualität, Risikomanagement und Vertrauen kommunizieren müssen.
In diesem Artikel stellen wir einige der menschlichen Herausforderungen vor, denen Tester häufig begegnen.
Agile Teams sind kleine, multidisziplinäre Teams. Sie müssen über alle Fähigkeiten verfügen, die zum Erstellen des Produkts erforderlich sind, an dem sie arbeiten. Dies umfasst alle Testfähigkeiten (Analyse, Design, Kommunikation, Automatisierung …), während es in vielen Teams nur einen Tester gibt … der daher auf dem Papier über alle diese Fähigkeiten verfügen muss … was selten der Fall ist.
Ebenso ist ein agiles Team, wie der Name schon sagt, ein „Team“. Es ist eine menschliche Gruppe, und die Integration in eine Gruppe ist nicht unbedingt einfach.
Schließlich arbeitet ein Agiles-Team an einem Produkt, das es im Allgemeinen sehr gut kennt. Um auf diesem Weg ans Ziel zu kommen, sind zusätzliche Fähigkeiten erforderlich.
Die Kombination dieser 3 Punkte stellt einen Tester vor echte Herausforderungen, der vom Team sowohl menschlich als auch operativ akzeptiert werden muss, indem er als Qualitäts- und Testreferenz für das speziell entwickelte Produkt fungiert.
Die Kombination dieser Fähigkeiten führt manchmal zur Ablehnung durch das Agile-Team, das nach einer Weile der Ansicht sein kann, dass der Tester nicht so viel beiträgt wie erwartet.
Es ist sehr selten, dass ein Tester alle Fähigkeiten besitzt, die ein Agile-Team benötigt. Wenn Sie dann noch die Fähigkeit hinzufügen, das Produkt gut zu verstehen und zu kennen und eine Affinität zu allen Teammitgliedern zu haben, sind Sie im Bereich des völlig Unwahrscheinlichen.
Wir dürfen nicht vergessen, dass Sie als Agile-Tester Teil eines Teams sind. Und in einem Team, sei es im Agilen-Bereich, im Sport oder in jedem anderen Bereich, helfen Sie sich gegenseitig. Als Tester sollten Sie nicht zögern, mit anderen Teammitgliedern (Entwicklern, Business, Ops usw.) zusammenzuarbeiten und sich bei bestimmten Aufgaben, die Sie noch nicht beherrschen, Hilfe zu holen.
Ebenso ist es immer eine gute Idee, sich mit Ihren Kollegen über Communities oder Events zum Thema Testen auszutauschen, um Ihre Fähigkeiten in bestimmten Aspekten des Testens zu verbessern.
Schließlich ist es ebenso wichtig, nicht alles revolutionieren zu wollen, bevor Sie den Kontext, die Bedürfnisse, Probleme, Stärken und vor allem das Produkt des Teams vollständig verstanden haben. Alles ändern zu wollen, ohne sich im Team Legitimität erworben zu haben, ist oft gleichbedeutend mit Ablehnung, aber auch mit unangemessenen Empfehlungen.
Anomalien zu finden ist gut, aber diejenigen zu korrigieren, die korrigiert werden müssen, ist besser. Dasselbe gilt für Verbesserungsmaßnahmen: Sie zu identifizieren ist gut, aber sie umzusetzen ist besser.
Sie haben zweifellos bestimmte Situationen erkannt. Die Aufgabe des Testers beschränkt sich nicht darauf, Mängel zu identifizieren, Qualitätsniveaus zu bewerten oder Verbesserungsmaßnahmen zu identifizieren. Es ist wichtig, dass diese Arbeit zu Fortschritt und Verbesserung führt. Leider reicht es nicht aus, von der Gültigkeit der eigenen Handlungen überzeugt zu sein (oder Recht zu haben), um Ihre Gesprächspartner zu überzeugen.
Testen hängt vom Kontext ab, und das gilt auch für die Kommunikation mit Ihren verschiedenen Kontakten!
Es ist wichtig, sich mit den Leuten, mit denen Sie arbeiten, sowie mit dem Produkt, das Sie testen, vertraut zu machen, um die richtigen Argumente zu finden, um ein Problem zu beheben, Verbesserungsmaßnahmen einzuleiten oder vor einem unzureichenden Qualitätsniveau zu warnen.
Ebenso muss die Kommunikation mit technischen Mitarbeitern (z. B. Teamentwicklern) und funktionalen Mitarbeitern (z. B. PO, Projektmanager usw.) unterschiedlich sein, da Erwartungen und Ziele nicht dieselben sind.
Es ist auch wichtig zu wissen, wann eine Schlacht „im Voraus verloren“ ist, um sich nicht zu erschöpfen. Die Implementierung einer Teststrategie kann wertvoll sein … Aber wenn Sie Ihre Teammitglieder nicht überzeugen können, liegt das möglicherweise daran, dass das Team noch keine Notwendigkeit dafür sieht oder dass es andere, höher priorisierte Probleme gibt.
Es ist normal, dass wir Testtechniken und -strategien oder -ansätze wieder einführen möchten, die in unseren früheren Kontexten funktioniert haben. Es ist typisch, dass Sie Tools verwenden möchten, die Sie beherrschen und mit denen Sie vertraut sind.
Leider stößt dieser Ansatz schnell an seine Grenzen, da das Testen vom Kontext abhängt und dieser Kontext von der Software abhängt, an der wir arbeiten, sowie von der Zeit. Selbst wenn wir also weiterhin im selben Team und am selben Produkt arbeiten, nutzen sich Testansätze wie Tests ab (das Pestizid-Paradoxon).
Um eine Verschlechterung der Qualität zu vermeiden, ist es wichtig, sich regelmäßig selbst herauszufordern und sich selbst zu hinterfragen, um sich mit dem Kontext weiterzuentwickeln.
Es ist wichtig, die Produktion in- und auswendig zu kennen, um Ihre Kampagnen voranzutreiben und sich mit Teammitgliedern und Kollegen auszutauschen, um potenzielle Schwachstellen und Verbesserungsbereiche zu identifizieren.
Tatsächlich müssen Sie neugierig bleiben und den ständigen Wunsch haben, voranzukommen. Nichts kann jemals als selbstverständlich angesehen werden … und das macht den Job eines Testers so faszinierend … und so schwer zu automatisieren!
Die Definition eines Qualitätsniveaus ist eine komplexe Angelegenheit. Dazu müssen Sie Ihren Testansatz definieren. Leider reicht es nicht aus, dieses Niveau definieren zu können! Es ist wichtig, dass der Tester seinen Gesprächspartnern dieses Qualitätsniveau verständlich machen kann.
Indikatoren sind ein gutes Mittel, um dies zu tun, aber letztendlich reichen sie nicht aus. Ein Tester muss in der Lage sein, die Einzelheiten der Produktionsbereitstellung schnell zu vermitteln. Was sind die Risiken? Was sind die bekannten und nicht behobenen Mängel? Welche Auswirkungen haben sie?
Sie werden sehen, dass dies die Aufgabe eines wohlbekannten Ergebnisses ist: der Bilanz! In der Praxis müssen Sie hart an dieser Überprüfung arbeiten, aber auch üben, die Fakten mündlich kurz und klar zu präsentieren, um sicherzustellen, dass Sie sie verstehen.
Es ist wichtig, Ihre Indikatoren klar zu definieren und transparent zu machen. Dies erfordert ein gutes Rückverfolgbarkeitsmanagement. Die Kommunikation muss auch an das Publikum angepasst werden … was uns zurück zur Herausforderung bringt, „Ihr Publikum zu überzeugen“.
Tests werden im Allgemeinen als Kostenstelle betrachtet. Auch wenn diese Ansicht weiterhin besteht, zeigen die Fakten etwas anderes. Wenn das nicht der Fall wäre, würden Unternehmen nicht testen!
Dennoch bleibt es wichtig, in Tests zu investieren, um sie effizienter zu gestalten, und das ist nicht immer einfach. Tatsächlich ist das Budget für die Entwicklung von Softwareprodukten begrenzt, und Investitionen in Tests gehen „auf Kosten“ potenzieller zusätzlicher Funktionen.
Es ist wichtig, den Leuten den „Wert des Testens“ bewusst zu machen und sie an die Vorteile des Testens zu erinnern, sowohl aus finanzieller als auch aus nicht-finanzieller Sicht.
Aus finanzieller Sicht gibt es häufige Indikatoren wie die Kosten für die Erkennung von Fehlern in der Produktion und beim Testen. Diese Berechnung zeigt die Einsparungen, die durch das Testen dank der Fehlererkennung erzielt werden. Es ist auch möglich, Indikatoren für Zeiteinsparungen zu haben, insbesondere mit dem Prozentsatz der Zeit, die für die Korrektur von Fehlern in der Produktion aufgewendet wird.
Aus nicht-finanzieller Sicht liefert das Testen qualitativ hochwertige Informationen für die Entscheidungsfindung. Informationen sind ein wichtiges Element, und selbst wenn sie nicht direkt Geld einbringen, schaffen sie Vertrauen. Das Testen gewährleistet auch ein Qualitätsniveau, das dem Markenimage des Unternehmens und/oder der Software zugute kommt. Diese Qualität schafft Loyalität und zieht neue Benutzer an!
Um mehr über die Herausforderungen zu erfahren, denen sich Tester stellen müssen, bleiben Sie in Verbindung. Ich werde Ihnen bald die technischen Herausforderungen und einige damit verbundene Tipps mitteilen.