Noworoczne postanowienia testera oprogramowania
Ja – Tester… Dzielnie walczący o jakość naszych aplikacji, poszukujący błędów, spędzający wiele godzin każdego dnia na wykonywaniu scenariuszy testowych...
Ja – Tester… Dzielnie walczący o jakość naszych aplikacji, poszukujący błędów, spędzający wiele godzin każdego dnia na wykonywaniu scenariuszy testowych, poprawnie raportujący zgłoszenia – w 2015 roku postanawiam zmienić swoje życie… Życie zawodowe… Ale zmiany zapewne wpłyną pozytywnie także na moje życie prywatne…
Mam już dosyć traktowania mnie jak programisty, któremu nie wyszło i dlatego zaczął testować. Jestem przecież profesjonalistą, wiem naprawdę dużo na temat tego, co robię i wnoszę wartość poprzez swoją pracę. Mam dosyć, że programiści często nie liczą się z moim zdaniem bo “jestem tylko testerem”. Chciałbym móc lepiej rozumieć to co i jak robimy. Potrzebuję dalszych możliwości rozwoju i wsparcia w nauce nowych umiejętności.
Każdego ranka przychodząc do pracy zastanawiam się, co tym razem będę musiał przeklikać? Ile razy już to klikałem? Jak bardzo jest to nudne i powtarzalne? Czuję się z tym źle. Wszyscy oczekują ode mnie jak największej wydajności, bo przecież wszystko musi być pokryte testami. Zwłaszcza teraz, gdy ten cholerny Agile sprawił, że na produkcję wydajemy – jak szaleni – co dwa tygodnie. Wszystko przyspieszyło – konkurencja i klienci wywierają na nas presję, a my nie możemy przecież pozwolić sobie na obniżenie jakości tego co robimy. Wiem już, że nieważne ile wyrobię nadgodzin, i tak później efekt naszej pracy nie będzie zadowalający.
Nie tędy droga.
Programiści przerzucają się z nami odbitymi zgłoszeniami błędów w takim tempie, że gdybym chciał na to wszystko odpisywać i za każdym razem udowadniać, że to jednak jest błąd i “u mnie nadal nie działa”, to nie robił bym zapewne nic innego. Ich frustracja też jest uzasadniona – przez złożoność naszego systemu i – co za tym idzie – nasze rozległe plany testów, nie jesteśmy w stanie dawać im informacji zwrotnej wystarczająco szybko.
Z powyższego wynika, że to my zawracamy im głowę pytaniami i błędami zgłaszanymi do funkcjonalności, którą już dawno “skończyli” i teraz przerywamy im w pracy nad bieżącym backlogiem.
To tylko kilka z moich bolączek z poprzednich lat – w 2015 roku postanawiam rozpocząć swoją przygodę z automatyzacją testów… Jak widać powyżej powodów jest wiele i wiem, że testy automatyczne to jedno z kluczowych rozwiązań moich problemów.
Spokojnie – nie zamierzam tego robić tak jak większość, którzy po latach nieudanych prób teraz narzekają na to, że automatyzacja tylko zwiększyła ilość ich pracy zamiast pomóc. Uczę się i wyciągam wnioski z błędów – najlepiej z tych popełnionych przez innych.
Wiem już, że aby automatyzować dobrze trzeba dbać o jakość kodu testów automatycznych na co najmniej takim samym poziomie, jak o jakość kodu produkcyjnego. Wiem, że nie można nagrywać i odtwarzać testów nazywając to “automatyzacją” – takie podejście powoduje jedynie powstanie nieskończonej ilości niepowtarzalnych i w praktyce nieutrzymywalnych testów automatycznych. Zastosowanie wzorców projektowych specyficznych dla testów jest wręcz konieczne – nie można ot tak, radośnie pisać kodu z nadzieją, że to co testujemy nigdy się nie zmieni. Zmiana jest oczywistą, naturalną konsekwencją pracy i rozwoju współczesnych systemów informatycznych.
Wiem też, że aby automatyzacja testów miała sens, potrzebuję wsparcia nie tylko programistów ale i całej organizacji. Wiem, że automatyzacja to proces wielopoziomowy, który nie wyklucza, a uzupełnia manualne testowanie, dzięki czemu staje się ono bardzie efektywne.
By zapewnić jak największą wartość pisanych przeze mnie testów, wspólnie stworzymy infrastrukturę pozwalającą na Continuous Integration. Wdrożymy narzędzia, praktyki i zasady pozwalające na maksymalizację wartości naszej wspólnej pracy. A gdy już testów automatycznych będzie dużo – stworzymy system pozwalający na ich równoległe uruchamianie, gdyż to jedyna droga do tego, by informacja z tych testów była szybka i wartościowa.
O tak! Przyspieszenie informacji zwrotnej dla programistów – to mój cel w tym roku! Bo to właśnie programiści są “klientami” testerów – to dla nich testujemy oprogramowanie.
Oto moje – testera oprogramowania – postanowienia na 2015 rok!
Powyższych kilka akapitów napisanych trochę z przymrużeniem oka opowiada mniej lub bardziej prawdziwą historię. Historię zarówno moją własną, kilku znajomych testerów i zapewne wielu z Was – testerów, którzy postanowili dokonać zmian w swoim życiu na przestrzeni ostatnich lat. Chyba w żadnym z tych przypadków zmiany nie następowały od razu i wymagały znacznej ilości czasu, motywacji, popełnionych błędów i pomocy w tym, by dokonać zmian w naszym postrzeganiu naszej pracy i nas samych.
W efekcie naszych doświadczeń z testowaniem oprogramowania i próbami automatyzacji testów w wielu różnych organizacjach i produktach stworzyliśmy praktyczne Warsztaty z Automatyzacji Testów. Zebraliśmy prawie 10 lat naszych doświadczeń wypełnionych wieloma popełnionymi błędami i wyciągniętymi z nich wnioskami. Stworzyliśmy kompleksowe kompendium wiedzy wsparte najbardziej efektywnymi metodami nauczania. A wszystko po to, by wiedza, którą z takim trudem zgromadziliśmy, nie przepadła i mogła być dalej efektywnie przekazywana i wykorzystywana w praktyce już od pierwszego dnia pracy po szkoleniu. Serdecznie zapraszam na najbliższe warsztaty z Automatyzacji Testów!