ConSelenium 2018. Agenda.

ConSelenium 2018. Agenda.
Cała konferencja poświęcona jednemu narzędziu? Tak, jeśli tym narzędziem jest wszechobecne Selenium!

W krótkim czasie i na tym samym (łódzkim) terenie odbywają się dwie zupełnie różne i sprzeczne imprezy testerskie. Kontekstowy i zorientowany na umiejętności TestingCup oraz skoncentrowane na jednym narzędziu ConSelenium. Konferencja testerska, która w całości poświęcona jest Selenium jest na polskim rynku nowością i na pewno warto przyjrzeć jej się bliżej. Twórcy konferencji opisują ją następująco: "Gdy tylko pojawiła się idea konferencji, wiedzieliśmy, że ConSelenium musi się równać JAKOŚCI, dlatego nie chcemy tracić cennego czasu na piękne wizualnie prezentacje marketingowe o zerowym wkładzie merytorycznym. Stawiamy na konkretne przykłady i praktyczne rozwiązania, zależy nam na dyskusji i intensywnej interakcji między prelegentem a słuchaczami".

Konferencja pojawia się na rynku w bardzo ciekawym momencie i myślę, że zanim napiszemy więcej o niej, to warto przeanalizować jej kontekst rynkowy.

W niewybrednych żartach o testerach oprogramowania mówi się, że to nieudani programiści. Oczywiście jako profesjonaliści w swoim zawodzie oburzamy się na takie sformułowania. Powiedzenia te, po pojawieniu się w projektach informatycznych automatyków testów, zyskały jeszcze bardziej na popularności. Bo ci młodzi adepci automatyzacji jeszcze nie nauczyli się testować, a już zaczęli kodować. Ich kodowanie ogranicza się dodatkowo do poziomu software'u, który ma zerową wartość walidacyjną (biznesową), a za to pewną wartość weryfikacyjną. Na negatywne postrzeganie automatyków wpływ mają również managerowie firm IT.  W ramach oszczędności wysyłają oni na pierwszą linię automatyzacji juniorów z rocznym doświadczeniem. Z powodów czysto finansowych nikt już nie myśli o specjalistach automatyzacji z 5-letnią i dłuższą praktyką. Koszty ich zatrudnienia są po prostu zbyt duże.

Z drugiej strony rynek automatyzacji rozwija się bardzo dynamicznie, a Selenium stało się praktycznie synonimem automatów. Pensje najlepszych specjalistów szybują wysoko. Są oni również chętniej zatrudniani do projektów niż testerzy manualni. W ogłoszeniach o pracę w sekcji "mile widziane" coraz częściej znajdujemy "webdriver", a nie "certyfikat".

W tych okolicznościach ConSelenium to strzał w dziesiątkę. Rzesza "self made test automation engineers" szuka i potrzebuje edukacji. Przecież nikt młodym adeptom automatyzacji nie miał okazji powiedzieć o wzorcach projektowych, pojedynczej odpowiedzialności, odseparowaniu warstwy logicznej od danych, czystym kodzie i setkach innych rzeczy, które odróżniają prawdziwych programistów od generatorów kodu. Usłyszeli od swoich przełożonych, że skoro aktualnie nie ma innych zadań, to może mogliby zakodować jakieś testy automatyczne? Pobrali i skonfigurowali IDE, a z tutoriali wyczytali, jak napisać pierwszy test na prostym formularzu i... on zadziałał! "Jestę automatykiem" - wykrzyknął niejeden.

Musimy edukować testerów i piętnować patologie automatyzacji. Programiści nie usuwają funkcjonalności tylko dlatego, że nie potrafią naprawić defektu w ich kodzie. Dlaczego więc automatycy usuwają testy tylko dlatego, że ich wynik zwraca „fail”?! Przecież ktoś podjął decyzję, aby to właśnie ten obszar funkcjonalny pokryć skryptem testowym.

Testerzy nie testują obszarów aplikacji kierując się łatwością ich pokrycia, a priorytetem wymagań. Czy decyzję o napisaniu automatu powinna warunkować podatność oprogramowania na automatyzację?

Czy nie powinna nam się zaświecić lampka w głowie, kiedy test przechodzi, a my nie wiemy dlaczego? I na koniec, dlaczego z taką łatwością ignorujemy i akceptujemy dziesiątki i setki testów, które na koniec cyklu świecą się czerwienią nieudanego uruchomienia?

Nie jest OK usuwanie testu. Nie jest OK automatyzowanie testów niekrytycznych obszarów oprogramowania. Nie jest OK nieudane uruchomienie automatu. Jest to czyste marnotrawstwo czasu i zasobów.

Automatyzacja potrzebuje dobrych praktyk, a o nich zbyt często dowiadujemy się dopiero wtedy, kiedy zostaną nam pokazane przez praktyków podczas prezentacji. Pamiętam jak na WrotQA Piotrek Ślęzak mówił o tym, jak należy i jak nie należy prowadzić projektów automatyzacji, a ludzie na sali byli w szoku. Po zakończeniu jego prelekcji przez chwilę była grobowa cisza, a potem pytaniom nie było końca. Domyślam się, że dziś Piotrek, jako członek rady programowej ConSelenium, dobiera tematy tak, by były one rozwinięciem tamtej prelekcji. Podobnie jak inny członek rady - Jan Sabak, który znany jest ze swojego perfekcjonizmu w kodowaniu testów. Wraz z Tomkiem Boniorem i Piotrkiem Wicherskim zapewne postawią na "mięsne" tematy z podkreśleniem tego, czym jest dobra automatyzacja. Nie ma jeszcze pełnej agendy, więc ciężko określić, jaki będzie końcowy kształt konferencji. Na teraz dominują w niej warsztaty dla początkujących oraz neutralne tematycznie prelekcje.

Radę programową ConSelenium stanowią znani i rozpoznawalni eksperci wieloplatformowej automatyzacji oraz managerowie, którzy niejeden nieudany projekt automatyzacji widzieli i naprawiali. Są oni gwarantami tego, że na CS otrzymasz praktyczną i przydatną wiedzę. Dla wielu osób, które posmakowały już automatów, ale nie czują się z nimi zbyt pewnie, może być to krok w kierunku profesjonalizacji własnej pracy.

 

Autor: Radek Smilgin

 

To powinno Cię zainteresować