QAOps – Ciągłe Zapewnienie Jakości W Metodyce Zwinnej / Agile
Like what you're reading? Share it!

QAOps – Ciągłe Zapewnienie Jakości W Metodyce Zwinnej / Agile

5 kluczowychinformacji:

  • Czy wiesz, żeuruchomienie wszystkich testów napisanych w ramach jednego projektu może zająć 220h?
  • Czy chces pójśćw kierunku kariery w świecie testów automatycznych? Wypróbuj Cypress!
  • Awans w ITMAGINATION? Od Testera Manualnego do Lidera Zespołu i "QA CompetenceLeader".
  • Odwróconapiramida testów? Posłuchaj jak metodologia "Agile" zmieniła świat testowania oprogramowania.
  • Jak zostać dobrym testerem automatycznym? Posłuchaj Marcina i Grzegorza, żeby się tego dowiedzieć!

Marcin: Witam, nazywam się Marcin Dąbrowski,CIO w ITMAGINATION, pracuję w ITMAGINATION od 10 lat i zapraszam na spotkanie z cyklurozmów ze specjalistami ITMAGINATION o najważniejszych tematach w IT. Na początek tematzapewnienia jakości w dobie metodyk zwinnych. Ze mną Grzesiek Tomczyk. Grzesiek, na początek proszęo przedstawienie się i dwa zdania o sobie.

Grzegorz: Cześć, jestem Grzegorz Tomczyk, w Ipracuje już ponad 5 latw najdłużej trwającym projekcie w firmie. W ramach projektu tworzymy ERP’a dlajednej z największych firm budowlanych. Zaczynałem prace jako tester manualny wjednym z zespołów scrumowych, obecnie jestem Team Leaderem zespołu testerów, dbamo infrastrukturę oraz rozwój naszego frameworka wykorzystywanego doautomatyzacji testów. Od kilku miesięcy pełnie też funkcje Competence Leadera QA, wspierając firmę w procesach rekrutacyjnych oraz w delivery. Wwolnych chwilach lubię oddawać się swoim hobby takim jak  d&d, planszówki, malowanie figurek,fotografia, czy gra na gitarze.

Marcin: Porozmawiajmy o zapewnieniu jakości. WScrum jest bardzo silny nacisk na jakość jako proces ciągły i wpisany wDefinition of Done każdego pojedynczego zadania. Co więcej każdy sprint ma siękończyć paczką, która potencjalnie ma trafić na produkcję. Jakie to ma znaczeniedla procesu testowania oprogramowania w stosunku do podejścia kaskadowego czyiteracyjnego?

Grzegorz: Kiedyś proces testowy wyglądał troszkę inaczej, testerzy to byłazazwyczaj osobna grupa, która dostawała produkt, bądź jego część do testów, aich zadaniem było wyłapać jak najwięcej Bugów, które następnie były fiksowane.Proces był skuteczny, ale powolny. Często też rodziły się różne konflikty na liniitester/developer między innymi z uwagi na to, iż zespól testerki i developerskito były 2 oddzielne byty posiadające różne cele. Obecnie w metodycezwinnej/agile zależy nam, aby te błędy wyłapywać jak najszybciej, co sprawia zejesteśmy w stanie szybko oraz niskim kosztem je fiksować. Dzięki takiemupodejściu mamy możliwość częściej i szybciej wypuszczać gotowe paczki. Oczywiściew celu zachowania jakości musiał też ulec zmianie sam proces testowania. Teraz większynacisk stawia się na automatyzacje testów dzięki czemu jesteśmy w stanie bardzoszybko wyłapywać błędy oraz nie potrzebujemy armii testerów manualnych, aby byćwstanie nadążyć z testami i dostarczyć klientowi produkt najwyższej jakości.

Marcin: Często przy tej okazji jestprzywoływany obrazek piramidy testów który stanął na głowie. Opowiedz proszę otym.

Grzegorz: Jak już chwilę wcześniej wspominałem, wcześniej proces testowy opierałsię głownie na ‘wyłapywaniu’ Bugów. Przy podejściu agile’owym staramy się zapobiegaćBugom. Dbamy o to aby posiadać jak największe pokrycie testami jednostkowymioraz aby zautomatyzować testami end to end najważniejsze części systemu. Jako DoD sprintu mamy zdefiniowane pokrycie kodu testami, co sprawia ze testy/jakośćjest równie ważna jak pozostałe artefakty wytwarzane w sprincie/projekcie. Obecniesam developer posiadając takie narzędzia jak unit testy czy UI testy jest w stanieuruchamiać je na swoim lokalnym branchu/środowisku, sprawdzać czy jego zmianynie wywołały jakiś regresji, a następnie szybko poprawić ewentualne problemy. Ponadtomożemy wpleść odpalanie takich testów do mechanizmów CI/CD co sprawia, żejesteśmy w stanie szybko zobaczyć wpływ zmian na stabilność całej aplikacji.Dzięki takiemu podejściu manualne testy eksploracyjne to już wisienka na torcie:).

Marcin: Ogromną rewolucjąostatnich lat jest automatyzacja testów End to End. Cypress, Selenium, Protractor…Czy dzisiaj tester to też po prostu programista?

Grzegorz: Zdecydowanie nie, osobiście uważam ze aby zostać dobrym testerautomatyzującym trzeba zacząć od testów manualnych, to uczy specyficznego sposobumyślenia i kombinowania. Oczywiście na pewno zdarzają się wyjątki, ale niestetybardzo często widzę ze osobom, które zaczynają od automatyzacji potem czegośbrakuje. Myślą trochę bardziej technicznie/programistycznie a przy testowaniu,brakuje im tego ‘testerskiego’ sposobu kombinowania w definiowaniu scenariuszy,który jest bardzo istotny w tym zawodzie.

Ale zgadzam się zfaktem, iż w ostatnich latach automatyzacja testów stała się bardzo popularna.Jak już mówiłem wcześniej przy okazji odwrócenia piramidy testów, automatyzacjajest kluczowa dla zapewnienia ciągłej jakości. W naszym projekcie wciążutrzymujemy około 3 tyś scenariuszy testowych end-to-end, a ich wykonanie wramach pipelines CI\CD zajmuje każdorazowo średnio 221h. To nieprzerwanie 9 dniklikania dla jednej osoby. Na szczęście przy zrównolegleniu zasobów udaje namsię je wszystkie uruchomić w przeciągu 5 godzin. Proszę sobie wyobrazić jakaarmia testerów manualnych musiałaby być zaangażowana do projektu, żeby pokażdym wdrożeniu na środowiska testowe wykonać taką regresję na podstawiemanualnych scenariuszy testowych.

Marcin: To jeszcze ostatniepytanie na podsumowanie. Gdyby tester manualny chciał poznać jedno narzędzie,które pozwoli mu rozwinąć karierę w stronę testera automatycznego, w którąstronę byś go dzisiaj skierował?

Grzegorz: Na chwile obecna z uwagi na duże możliwości, niski próg wejścia orazciągle rosnąca popularność najprawdopodobniej byłby to Cypress. Cypress jestnarzędziem do automatyzacji testów end 2 end, które umożliwia uruchamianie idebugowanie testów z poziomu przeglądarki dzięki czemu przyjemniej nam się znim pracuje. Nie wymaga wiele konfiguracji a intuicyjne komendy sprawiają, iżpraktycznie od razu po zainstalowaniu możemy siadać i pisać testy. Dodatkowoposiada dobrze napisana dokumentacje, która umożliwia szybki start, a jeśli ktośpreferuje video tutoriale to wiele gotowych kursów dostępnych jest np. na Youtubeczy Udemy.

Marcin: Dziękuję za rozmowę Grzesiek. Na koniec tylko dodam, że na stanowisko QA Engineer mamy aktualnie otwartą rekrutację. Po szczegóły zapraszam do zakładki Career na naszej stronie internetowej https://www.itmagiantion.com. Zapraszam również do kontaktu, chociażby przez LinkedIn,zarówno moje konto osobiste jak i firmowe ITMAGINATION.

© 2021 ITMAGINATION. All Rights Reserved. Privacy Policy