Mateusz Bator
Poniedziałek 5 października
Don’t be flaky! Stabilizacja drogą do niezawodnych automatów w praktyce (Selenium + Java)
Flaky tests są jedną z większych bolączek w automatyzacji testów. Warsztat oparty o prelekcje wygłoszoną na 3 konferencjach pokaże praktyczne zastosowanie omawianych tam technik. Wykorzystamy framework na bazie Selenium oraz prostą aplikację webową. Celem warsztatu jest przekazanie sprawdzonych praktyk wykrywania, zapobiegania i naprawiania flaky tests. Dzięki kilkunastu latom doświadczenia zeszliśmy z flaky tests do poziomu < 0,5% na Quality Gates. Warsztat zrealizowany i wysoko oceniony na ConSelenium 2024 (ocena 4.9/5) i TestWarez 2025 (ocena 4.625/5). Agenda warsztatu: 1. Wprowadzenie i setup projektu - Analiza przyczyn i skutków flaky tests. - Dyskusja nad problemami uczestników. 2. Metoda stabilizacji i separacja kodu - Autorska metoda stabilizacji testów - jak, kiedy, ile razy? - Ćwiczenie: Jak odseparować niestabilny kod oraz testy od stabilnego. - Ćwiczenie: Implementacja skryptu do stabilizacji testów i analiza wyników. 3. Logowanie i raportowanie - Ćwiczenie: Jak usprawnić raport o niezbędne logi i załączniki - Ćwiczenie: Pokazanie w praktyce trendów i historii test case’ów. - Ćwiczenie: Budowa czytelnego timeline’u w Allure. - Ćwiczenie: Automatyczne logowanie metod (AspectJ). 4. Case study wybranych flaky tests Najdłuższa część warsztatu wraz z demo analizy flaky tests przez agenta AI - Ćwiczenie: Właściwe oczekiwania na dynamicznie zmieniające się elementy na GUI. - Ćwiczenie: Sposób na ponawianie nieudanych clicków. - Ćwiczenie: Problemy „nierozwiązywalne” - mechanizm „Repeat”. 5. Bonus - Pozytywne efekty uboczne stabilizacji testów. - Złoty środek pomiędzy kosztami automatyzacji a zaufaniem do wyników na QG. Testy Selenium wciąż są obecne w wielu projektach. Często brakuje im stabilności. Uczestnicy wrócą zatem z wieloma usprawnieniami, które będą mogli wdrożyć w swoich projektach.