KraQA #40

KraQA #40 już za nami! Mimo wysokiej temperatury w ostatni wtorek czerwca i wakacyjnego luzu, kilkanaście osób przybyło do naszego miejsca w Klubie Re, aby wysłuchać dwóch prezentacji.

Pierwszą prezentację poprowadził Jakub Michalec – tester, obecnie programista. Jak sam o sobie mówi – człowiek od “nie da się” – dlatego, że na początku wszystkich zmian najczęściej słyszał takie słowa.

Kuba pokazał jak w przeciągu 6 miesięcy przetransformował infrastrukturę, którą zastał – do pełnego CI w chmurze. Zaprezentował case study transformacji z Selenium grid on-premise do Azure w swojej firmie.

Początkowa transformacja zakładała:

  • Zdobycie lepszej maszyny na środowisko testowe
  • Osobną maszynę do serwera SQL
  • Re-run problematycznych testów
  • Kod testów tak samo dobry jakościowo jak kod produktu 

Już pierwsze wyniki pokazały, że nie wszystkie założenia sprawdzają się w rzeczywistości. Co możemy stwierdzić po przeanalizowaniu tych zmian:

  • Więcej klientów wymusza lepszą jakość, którą trzeba zarządzać
  • Możliwość wykonywania tylko 1 testu w tym samym czasie
  • Wydłużenie czasu testów – nawet do 7 godzin
  • Odsetek testów “czerwonych” – nawet do 800 podczas jednej sesji
  • Każdy zespół chciał być niezależny i uruchamiać testy kiedy chciał
  • Każdego dnia weryfikacja testów i nieustające pytanie: produkt czy testy niskiej jakości

Efektem był fakt, że zespół przestał ufać testom i reagować na feedback. Dlatego postanowili zrobić kolejny krok  i przenieść się do Azure. 

Plusy tego rozwiązania:

  • Azure Jenkins pipelines (wspiera integrację z Jenkinsem – CI)
  • Łatwiejszy deployment 
  • Jenkins Azure VM Agent plug-in (wtyczka do tworzenia wirtualnych maszyn)
  • Skalowalność Azure

Jak aktualnie wygląda efekt pracy?

  • Czas na przeprowadzenie około tysiąca testów zredukowany do 3 godzin
  • Około 10 “czerwonych” testów podczas sesji
  • Zaufanie zespołu do testów – obecne wyniki dają szybką informację odnośnie jakości produktu
  • Zredukowanie pracy manualnej
  • Możliwość utrzymania dużej ilości testów (około 2 tysiące) 

Druga prezentacja to coś dla osób związanych bezpośrednio z Continous Deployment. Prezentacja była prowadzona przez Andreasa Grabnera z Dynatrace, który już po raz drugi był gościem KraQA – pierwszy raz wystąpił na #KraQA 19 – kto z Was pamięta? 🙂 

Tematem prezentacji był: “CD on Kubernetes with keptn” – czyli pokazanie wdrożenia Continuous Deployment w oparciu o zastosowanie kontenerów Kubernetes. Andreas bardzo żywo prowadził dyskusję – między innymi przeprowadzał ankietę wśród uczestników odnośnie ilości pipelines w ich firmie. Odpowiedzi jak zawsze zróżnicowane – wśród publiczności wyniki oscylowały od 6 do 100 – do czego odwoływał się wśród dalszej dyskusji.

Swoje wystąpienie rozpoczął odwołaniem się do 3 obszarów, które zdiagnozował w Dynatrace. Są to odpowiedzi na 3 kwestie:

  • Co mają obecnie
  • Do czego dążą
  • Czego nie chcą 

Podczas wystąpienia mogliśmy doświadczyć jak zostało to wdrożone w ich firmie – po wydaniu v0.2 otwartej platformy https://keptn.sh/ – która wspiera dostarczanie pipelines w pełni zautomatyzowanego, a także automatyczną naprawę usług opartą na kontenerach.

Wystąpienie było jednocześnie kodowaniem na żywo – aby każdy mógł odtworzyć na swoim środowisku, a także pełną prezentacją dlaczego używają tego wszystkiego w keptn. Andreas sprawił, że fani “technicznego mięsa” poczuli się spełnieni – co było widać po ilości pytań od uczestników. 


#KraQA40 to było ostatnie spotkanie przedwakacyjne. Życzymy udanego wypoczynku i naładowania akumulatorów – bo już we wrześniu widzimy się ponownie! 🙂