Flaky Tests und der Umgang mit diesen – #1 Medien / Infosammlung

Flaky / instabile Testfälle wird wohl jeder kennen, der schon mal das Vergnügen hatte, den einen oder anderen automatisierten Oberflächentest auszuführen. Flaky Testfälle können viele Ursachen haben, dem Grund auf die Spur zu kommen, ist eine der Hauptaufgaben des Testautomatisierers.

Seit einigen Jahren tobt ein kleiner Glaubenskrieg zwischen denen, die, aus Zeit oder Kostengründen, etwas instabile Testfälle verstecken / erneut durchführen möchten und denen, die die darin einen Verstoß gegen alle Prinzipien eines/r ehrenhaften Testautomatisierers/in sehen.

Hier findest du einen kleinen Einblick in die Meinungen unterschiedlicher Unternehmen / Fach-Personen, die sich mit diesem Thema befasst haben.



Wer hat die Diskussion angestoßen?

Ausgelöst wurde die Diskussion ursprünglich von Google. Google war eines der ersten Unternehmen, das öffentlich zugegeben hat, Probleme mit der Stabilität von E2E Testfällen zu haben (obwohl Google relativ wenig Probleme haben dürfte, die besten Entwickler dieser Welt anzuwerben). Dieses Thema wurde auf einer Google Test Automation Conference vor einigen Jahren stark thematisiert und wurde auch unter andrem in folgenden Blogbeiträgen zusammengefasst:
https://testing.googleblog.com/2016/05/flaky-tests-at-google-and-how-we.html
https://testing.googleblog.com/2017/04/where-do-our-flaky-tests-come-from.html

Übrigens lohnt es sich durchaus den Blog von Google zu abonnieren, da kommen regelmäßig interessante Beiträge rein 😉

 

Was sagen die Kritiker?

Die „Analysemethoden“ und die daraus folgenden Schlussfolgerungen werden nicht überall mit Begeisterung. Hauptargument der Kritiker ist, dass die Flaky-Tests eine Chance sind, das System besser zu verstehen und evtl. Schwachstellen zu finden. Stumpfes Rerun von Testfällen könnte tatsächliche Fehler überdecken und dadurch die Qualität von der Software riskieren.

Dazu folgende Kommentare von unterschiedlichen Konferenzen:


 

 

Was machen die Testauto- Tool Hersteller?

Auch die Toolhersteller sind natürlich an möglichst stabilen Testfällen interessiert, Frustration ist schließlich schlecht fürs Geschäft 🙂
Da ein ausgereiftes Testautomatisierungstool, noch lange keine Garantie für stabile Testfälle ist. Gehen auch die Werkzeughersteller weiter, um die Stabilität der Testfälle zu erhöhen. Ranorex hat z.B. in der Version 7.2 folgendes Feature veröffentlicht:

Auto rerun failed test containers to reduce issues caused by temporary instabilities of the application under test.

 

 

0 Antworten

Hinterlassen Sie einen Kommentar

Wollen Sie an der Diskussion teilnehmen?
Feel free to contribute!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.