SlideShare a Scribd company logo
TESTOWANIE AUTOMATYCZNE
PRACA TESTERA AUTOMATYZUJĄCEGO
Katarzyna Javaheri-Szpak
6 marca 2024
Get Into QA
AGENDA
• Kilka słów o mnie
• Testowanie vs. Quality Assurance (QA)
• Czym jest testowanie automatyczne?
• Bonus dla początkujących
• Sesja Q&A
O MNIE
wykształcenie filologiczne
praca w Iranie i Afganistanie
kursy językowe
kilka wydanych książek
do 2016
O MNIE
2016
przebranżowienie
(studia podyplomowe z frontendu
180-h zawodowy kurs testerski)
2017 pierwsza pełnoetatowa praca w IT (front-end)
2018
pierwsza praca jako tester
początki automatyzacji w Pythonie
2020 procesy Quality Assurance
2022
certyfikat Scrum Developer Certified
procesy DevOps
2023 certyfikat ISTQB Foundation (w końcu 🤓)
Oprócz tego:
nieustannie się dokształcam (studia AI, certyfikaty DevOps)
dzielę się wiedzą (m.in. Tech Leaders)
Testowanie oprogramowania
Czym jest testowanie oprogramowania?
Jest to część procesu wytwarzania oprogramowania.
Praca testera (testowanie) polega na znalezieniu niezgodności
w wymaganiach, wykryciu potencjalnych luk oraz bugów (defektów).
Testowanie buduje zaufanie do tworzonego kodu 
przetestowany kod = mniej potencjalnych problemów.
tester / QA / inżynier ds. jakości
ZAPEWNIANIE JAKOŚCI
TESTOWANIE
QA = Quality Assurance
zapewnianie jakości
testowanie = część procesu
zapewniania jakości
tester automatyzujący vs.
QA inżynier automatyzujący
tester automatyzujący
pisze testy automatyczne
charakter pracy: korekcyjny
QA automatyzujący
pisze testy automatyczne, ale
także automatyzuje całe
procesy
charakter pracy: prewencyjny
proces wytwarzania oprogramowania
planowanie wykonanie weryfikacja wdrożenie
ulepszenie
i
utrzymanie
m.in. testowanie
zapewnianie jakości
TESTOWANIE MANUALNE I AUTOMATYCZNE
Testowanie manualne (ręczne)
- testy wykonywane są ręcznie przez
wyznaczoną osobę (testera),
- testy manualne mogą być zawodne
(pierwiastek ludzki – np. po długim
czasie gdy jedna osoba ciągle
przeprowadza te same testy, czujność
takiej osoby spada  ślepota na
defekty)
Testowanie automatyczne
- testy wykonują się automatycznie w
oparciu
o wcześniej stworzone skrypty
testowe
- ograniczona rola człowieka
i co za tym idzie niezawodność
(skrypty nie chorują i nie są
zmęczone  )
TESTOWANIE MANUALNE I AUTOMATYCZNE
Testowanie manualne (ręczne) Testowanie automatyczne
CEL TESTÓW AUTOMATYCZNYCH?
- zwiększenie efektywności, dokładności i oszczędności czasu,
- minimalizacja interwencji ludzkiej (“słabego ogniwa”),
- szczególnie przydatne przy częstych, powtarzalnych
(i nudnych) testach regresji
* testy regresji sprawdzają, czy nowe zmiany nie wprowadziły błędów
do istniejących funkcjonalności
CO AUTOMATYZUJEMY?
- w praktyce zautomatyzować można prawie wszystko,
ale nie zawsze ma to sens (najlepiej to, co jest powtarzalne)
- testy jednostkowe (sprawdzające pojedyncze funkcje w kodzie)
- testy integracyjne (sprawdzające, jak różne części systemu
współpracują ze sobą)
- testy e2e (sprawdzające, czy cały system działa poprawnie “od
początku do końca”)
PIRAMIDA TESTÓW
testy e2e / testy UI
testy integracyjne /
testy serwisów
testy jednostkowe /
unit testy
TESTY JEDNOSTKOWE
- są to zawsze testy automatyczne
- zwykle pisane przez programistów
- sprawdzają ”jednostki” kodu (np. funkcję, klasę),
- są “oderwane od rzeczywistości” czyli nie są
w stanie sprawdzić czy cała aplikacja działa
prawidłowo
- z założenia testów jednostkowych powinno być
najwięcej (patrz: piramida testów - najniższy poziom
testów)
TESTY INTERGRACYJNE
- testują interakcje między modułami / mikroserwisami lub
systemami
- sprawdzają funkcjonalność, niezawodność i wydajność
systemu po integracji poszczególnych modułów ze sobą
- przeprowadzane po testach jednostkowych
- mogą być pisane przez programistów lub testerów
automatyzujących
- mogą być przeprowadzane manualnie przez testerów
TESTY E2E
- najwyższy poziom testów
- przeprowadzane z punktu widzenia użytkownika
(pełne scenariusze zachowań, od początku do końca)
- mogą być manualne i/lub automatyczne
- przeprowadzane głównie przez testerów
- testów end-to-end powinno być najmniej (najwyższy
poziom testów na piramidzie)
CZYM JEST TESTOWANIE CROSS-BROWSER?
- proces testowania na różnych przeglądarkach internetowych
(Chrome, Safari, Firefox… + wersje mobilne)
- różne przeglądarki mogą interpretować kod strony w różny sposób,
co może prowadzić do różnic w wyświetlaniu lub działaniu
- celem jest dostarczenie spójności niezależnie od przeglądarki,
systemu operacyjnego lub urządzenia, z którego korzysta
użytkownik
CZYM JEST TESTOWANIE CROSS-BROWSER?
- manualnie – bardzo
czasochłonne
- automatycznie – w praktyce
można użyć tego samego
kodu dla wszystkich
wymaganych przeglądarek i
urządzeń (tablety, telefony)
CZYM JEST TESTOWANIE CROSS-BROWSER?
BrowserStack, Sauce Labs, LambdaTest – narzędzia, które
umożliwiają testowanie aplikacji w różnych środowiskach
przeglądarkowych bez potrzeby fizycznego posiadania
każdej z przeglądarek czy urządzeń
WADY I ZALETY TESTÓW AUTOMATYCZNYCH
WADY
- wysokie koszty początkowe,
- konieczność utrzymania
skryptów testowych
- możliwość przeoczenia
niektórych błędów, które
mogą być dostrzeżone tylko
przez ludzkie oko
ZALETY
- szybkość i dokładność
- wykonywanie testów poza
godzinami pracy
- jeden z kroków do
całkowitego
zautomatyzowania procesu
wytwarzania
oprogramowania
NARZĘDZIA DO TESTOWANIA AUTOMATYCZNEGO
kodowanie narzędzia low-code,
no-code, codeless
AUTOMATYZACJA W OPARCIU O KOD
wybrany język
programowania + wybrany
framework
np. Python + Selenium
Cypress + JavaScript
Playwright + TypeScript
czym jest framework?
szkielet do budowy aplikacji
lub platformy testującej
rodzaj oprogramowania
pomocniczego (biblioteki,
dodatki, szablony)
AUTOMATYZACJA W OPARCIU O KOD
wymagane:
- znajomość co najmniej jednego
języka programowania
- znajomość Gita (systemu
kontroli wersji)
- podstawowa wiedza na temat
konfiguracji środowisk
programistycznych (IDE)
czym jest IDE?
Integrated Development
Environment
zintegrowane środowisko
programistyczne
np. PyCharm,
Visual Studio Code
Testowanie automatyczne 2024 INCO Academy
LOW-CODE, NO-CODE, CODELESS
Low-code to podejście, które
minimalizuje potrzebę pisania
kodu
Narzędzia low-code do
testowania pozwalają na
tworzenie testów z mniejszą
ilością kodowania, co obniża próg
wejścia.
Rozwiązania no-code umożliwiają
tworzenie testów bez pisania ani
jednej linii kodu, wykorzystując
interfejsy graficzne (GUI).
Minus tych narzędzi:
zwykle są płatne i to słono
AUTOMATYZACJA W OPARCIU O LOW-CODE
przykłady narzędzi:
Leapwork, Tricentis Tosca, Ghost Inspector,
TestSigma, Mabl
Testowanie automatyczne 2024 INCO Academy
Testowanie automatyczne 2024 INCO Academy
Testowanie automatyczne 2024 INCO Academy
- u siebie na lokalnym komputerze
- w narzędziach CI/CD (GitLab, GitHub Actions),
uruchamiane manualnie lub automatycznie
- własne, dedykowane rozwiązania w chmurze
lub/i w kontenerach (Docker)
- na platformach low-code (z integracjami)
GDZIE PUSZCZAĆ TESTY AUTOMATYCZNE?
KIEDY WYBRAĆ AUTOMATY?
PRZYKŁADY
PRZYKŁAD DOBORU TESTÓW MANUALNYCH
I AUTOMATYCZNYCH
Produkt: edytor makiet 3D online
Charakterystyka: istnieje od 6 lat, dużo funkcji, niezmienna “baza” funkcji,
3 razy w tygodniu dodawane drobne poprawki, a także nowe funkcjonalności
Testy: oprócz testów nowych funkcjonalności, należy przed każdym wydaniem nowych
zmian, przetestować cały system pod kątem regresji
Nieefektywne podejście:
Testy manualne regresji: zajmują 3-4 godziny, wykonywane co dwa dni, żmudne i
męczące dla testera (po roku pracy wykonuje 156 praktycznie identycznych sesji)
Efektywne podejście: zautomatyzowanie powtarzalnych ścieżek, manualne testowanie
tylko nowych funkcjonalności
Produkt: innowacyjna platforma do inwestycji
Charakterystyka: istnieje od 3 miesięcy, co chwilę zmienia się koncept jej działania,
autorzy poszukują wciąż nowych rozwiązań
Testy: testy nowych funkcjonalności i testy całego systemu po każdej większej zmianie
koncepcji
Nieefektywne podejście:
Automatyzacja każdej nowej funkcjonalności – podejście kosztowne, a bez gwarancji,
że w przyszłości te funkcjonalności będą nadal częścią systemu
Efektywne podejście:
Testowanie manualne, zarówno przez zawodowych testerów, jak i np.
w ramach programu wczesnego dostępu – przez użytkowników
PRZYKŁAD DOBORU TESTÓW MANUALNYCH
I AUTOMATYCZNYCH
AUTOMATY JAKO PRZEPUSTKA DO
“PRAWDZIWEGO” PROGRAMOWANIA?
• Często kariera testera manualnego i potem automatyzacja testów są traktowane
jako przepustka do “prawdziwego” programowania
TAK
Automatyzacja testów pozwala na praktyczne
zastosowanie konceptów programistycznych
Testowanie automatyczne może pomóc
w zrozumieniu kodu produkcyjnego i procesów
ciągłej integracji (CI/CD)
NIE
U testera lub QA inżyniera najważniejszy jest mindset
i inne, całościowe spojrzenie na oprogramowanie
oraz procesy ich tworzenia
Pisanie skryptów automatycznych to tylko narzędzie,
by realizować zadania zapewniania jakości
BONUS DLA POCZĄTKUJĄCYCH
CHCĘ BYĆ TESTEREM - CO ROBIĆ, JAK ŻYĆ?
• Nie ma szans byś na początku wiedział/a wszystko  potrzebny jest plan
• Lepiej skupić sie porządnie na kilku podstawowych tematach niż próbować na raz
zrozumieć tzw. “wszystko”
• Nie kłamiemy w CV
• Angielski (ewentualnie niemiecki)
• Ostrożnie dobieraj materiały i kursy – najlepiej z dobrymi opiniami lub
z polecenia
• Czas też kosztuje! Nie nabieraj się na darmowe, niskiej jakości webinary czy inne
“programy”, które mają Cię na końcu przekonać do drogiego zakupu
• Zaprzyjaźnij się z AI (np. ChatGPT jako asystent, mentor)
• Kiedy coś nie idzie do przodu – zastanów się czy to naprawdę jest dla Ciebie
BONUS DLA POCZĄTKUJĄCYCH
CHCĘ BYĆ TESTEREM AUTOMATYZUJĄCYM
• Próg wejścia jest dużo wyższy niż na stanowisko manualne
• Lepiej jest popracować kilka miesięcy jako “manual” i zobaczyć:
• jak od środka wygląda proces wytwarzania oprogramowania
• czym się kierować wybierając przypadki testowe do automatyzacji
• na własnej skórze poczuć “powtarzalność” lub nudę niektórych zadań (takie
zadania są dobrymi kandydatami do automatyzacji)
• Pamiętajcie, że automatyzacja testów to nie jedyna droga słusznego
rozwoju 
DZIĘKUJĘ ZA UWAGĘ!
katarzyna.javaheri@gmail.com
javaheri.pl

More Related Content

PPTX
Podstawy testowania oprogramowania INCO 2023.pptx
PPSX
MS - Wprowadzenie do testów jednostkowych
PDF
Girls in IT - QA
PDF
KraQA#28: Cel: automatyzacja
PDF
Matka, żona, i...testerka
PDF
Test na testera. Sprawdź czy nadajesz się do tego zawodu.
PPTX
[TestWarez 2017] Przychodzi tester na rozmowę...
PDF
Jak bardzo techniczny musi być tester?
Podstawy testowania oprogramowania INCO 2023.pptx
MS - Wprowadzenie do testów jednostkowych
Girls in IT - QA
KraQA#28: Cel: automatyzacja
Matka, żona, i...testerka
Test na testera. Sprawdź czy nadajesz się do tego zawodu.
[TestWarez 2017] Przychodzi tester na rozmowę...
Jak bardzo techniczny musi być tester?

Similar to Testowanie automatyczne 2024 INCO Academy (20)

PDF
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
PPTX
Sens i cel automatyzacji testów
PPTX
Zawód tester - spotkanie z autorem książki
PDF
BugHuntFest2024 - Mity o pracy testera (Katarzyna Javaheri)
PDF
SkładQA 2018 - Daniel Dec
PDF
Edukacja testerska na Quality in IT
PDF
Automatyzacja w praktyce. Praktyka automatyzacji
PDF
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
PPTX
[TestWarez 2017] QA z perspektywy biznesu – jak zarabiać na testowaniu
PPTX
WEBINAR 1# Wprowadzenie do automatyzacji testów
PDF
Let's tests! Prezentacja Moniki Braun w trakcie warsztatów "Let's go to IT"
PDF
Tester eksploracyjny. Ostatni zawód na świecie.
PDF
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
PDF
e2e frameworks - czyli kij ma dwa końce
PDF
Najważniejszym czynnikiem dobrych testów, nie jest pisanie dobrych testów
PPTX
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie
PDF
Certyfikacja ISTQB - fakty i mity
PDF
Perl. Testowanie. Zapiski programisty
PDF
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
Sens i cel automatyzacji testów
Zawód tester - spotkanie z autorem książki
BugHuntFest2024 - Mity o pracy testera (Katarzyna Javaheri)
SkładQA 2018 - Daniel Dec
Edukacja testerska na Quality in IT
Automatyzacja w praktyce. Praktyka automatyzacji
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[TestWarez 2017] QA z perspektywy biznesu – jak zarabiać na testowaniu
WEBINAR 1# Wprowadzenie do automatyzacji testów
Let's tests! Prezentacja Moniki Braun w trakcie warsztatów "Let's go to IT"
Tester eksploracyjny. Ostatni zawód na świecie.
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
e2e frameworks - czyli kij ma dwa końce
Najważniejszym czynnikiem dobrych testów, nie jest pisanie dobrych testów
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie
Certyfikacja ISTQB - fakty i mity
Perl. Testowanie. Zapiski programisty
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Ad

More from Katarzyna Javaheri-Szpak (6)

PPTX
Testowanie na 101 sposobów
PPTX
Podstawy testowania oprogramowania
PPTX
WordPress dla początkujących
PPTX
Bezpieczeństwo stron opartych na popularnych systemach zarządzania treścią
PDF
Codzienna praca testerki oprogramowania
PDF
WDI 2021 - Pierwszy duży projekt w Pythonie i Selenium - Katarzyna Javaheri-S...
Testowanie na 101 sposobów
Podstawy testowania oprogramowania
WordPress dla początkujących
Bezpieczeństwo stron opartych na popularnych systemach zarządzania treścią
Codzienna praca testerki oprogramowania
WDI 2021 - Pierwszy duży projekt w Pythonie i Selenium - Katarzyna Javaheri-S...
Ad

Testowanie automatyczne 2024 INCO Academy

  • 1. TESTOWANIE AUTOMATYCZNE PRACA TESTERA AUTOMATYZUJĄCEGO Katarzyna Javaheri-Szpak 6 marca 2024 Get Into QA
  • 2. AGENDA • Kilka słów o mnie • Testowanie vs. Quality Assurance (QA) • Czym jest testowanie automatyczne? • Bonus dla początkujących • Sesja Q&A
  • 3. O MNIE wykształcenie filologiczne praca w Iranie i Afganistanie kursy językowe kilka wydanych książek do 2016
  • 4. O MNIE 2016 przebranżowienie (studia podyplomowe z frontendu 180-h zawodowy kurs testerski) 2017 pierwsza pełnoetatowa praca w IT (front-end) 2018 pierwsza praca jako tester początki automatyzacji w Pythonie 2020 procesy Quality Assurance 2022 certyfikat Scrum Developer Certified procesy DevOps 2023 certyfikat ISTQB Foundation (w końcu 🤓) Oprócz tego: nieustannie się dokształcam (studia AI, certyfikaty DevOps) dzielę się wiedzą (m.in. Tech Leaders)
  • 5. Testowanie oprogramowania Czym jest testowanie oprogramowania? Jest to część procesu wytwarzania oprogramowania. Praca testera (testowanie) polega na znalezieniu niezgodności w wymaganiach, wykryciu potencjalnych luk oraz bugów (defektów). Testowanie buduje zaufanie do tworzonego kodu  przetestowany kod = mniej potencjalnych problemów.
  • 6. tester / QA / inżynier ds. jakości ZAPEWNIANIE JAKOŚCI TESTOWANIE QA = Quality Assurance zapewnianie jakości testowanie = część procesu zapewniania jakości
  • 7. tester automatyzujący vs. QA inżynier automatyzujący tester automatyzujący pisze testy automatyczne charakter pracy: korekcyjny QA automatyzujący pisze testy automatyczne, ale także automatyzuje całe procesy charakter pracy: prewencyjny
  • 8. proces wytwarzania oprogramowania planowanie wykonanie weryfikacja wdrożenie ulepszenie i utrzymanie m.in. testowanie zapewnianie jakości
  • 9. TESTOWANIE MANUALNE I AUTOMATYCZNE Testowanie manualne (ręczne) - testy wykonywane są ręcznie przez wyznaczoną osobę (testera), - testy manualne mogą być zawodne (pierwiastek ludzki – np. po długim czasie gdy jedna osoba ciągle przeprowadza te same testy, czujność takiej osoby spada  ślepota na defekty) Testowanie automatyczne - testy wykonują się automatycznie w oparciu o wcześniej stworzone skrypty testowe - ograniczona rola człowieka i co za tym idzie niezawodność (skrypty nie chorują i nie są zmęczone  )
  • 10. TESTOWANIE MANUALNE I AUTOMATYCZNE Testowanie manualne (ręczne) Testowanie automatyczne
  • 11. CEL TESTÓW AUTOMATYCZNYCH? - zwiększenie efektywności, dokładności i oszczędności czasu, - minimalizacja interwencji ludzkiej (“słabego ogniwa”), - szczególnie przydatne przy częstych, powtarzalnych (i nudnych) testach regresji * testy regresji sprawdzają, czy nowe zmiany nie wprowadziły błędów do istniejących funkcjonalności
  • 12. CO AUTOMATYZUJEMY? - w praktyce zautomatyzować można prawie wszystko, ale nie zawsze ma to sens (najlepiej to, co jest powtarzalne) - testy jednostkowe (sprawdzające pojedyncze funkcje w kodzie) - testy integracyjne (sprawdzające, jak różne części systemu współpracują ze sobą) - testy e2e (sprawdzające, czy cały system działa poprawnie “od początku do końca”)
  • 13. PIRAMIDA TESTÓW testy e2e / testy UI testy integracyjne / testy serwisów testy jednostkowe / unit testy
  • 14. TESTY JEDNOSTKOWE - są to zawsze testy automatyczne - zwykle pisane przez programistów - sprawdzają ”jednostki” kodu (np. funkcję, klasę), - są “oderwane od rzeczywistości” czyli nie są w stanie sprawdzić czy cała aplikacja działa prawidłowo - z założenia testów jednostkowych powinno być najwięcej (patrz: piramida testów - najniższy poziom testów)
  • 15. TESTY INTERGRACYJNE - testują interakcje między modułami / mikroserwisami lub systemami - sprawdzają funkcjonalność, niezawodność i wydajność systemu po integracji poszczególnych modułów ze sobą - przeprowadzane po testach jednostkowych - mogą być pisane przez programistów lub testerów automatyzujących - mogą być przeprowadzane manualnie przez testerów
  • 16. TESTY E2E - najwyższy poziom testów - przeprowadzane z punktu widzenia użytkownika (pełne scenariusze zachowań, od początku do końca) - mogą być manualne i/lub automatyczne - przeprowadzane głównie przez testerów - testów end-to-end powinno być najmniej (najwyższy poziom testów na piramidzie)
  • 17. CZYM JEST TESTOWANIE CROSS-BROWSER? - proces testowania na różnych przeglądarkach internetowych (Chrome, Safari, Firefox… + wersje mobilne) - różne przeglądarki mogą interpretować kod strony w różny sposób, co może prowadzić do różnic w wyświetlaniu lub działaniu - celem jest dostarczenie spójności niezależnie od przeglądarki, systemu operacyjnego lub urządzenia, z którego korzysta użytkownik
  • 18. CZYM JEST TESTOWANIE CROSS-BROWSER? - manualnie – bardzo czasochłonne - automatycznie – w praktyce można użyć tego samego kodu dla wszystkich wymaganych przeglądarek i urządzeń (tablety, telefony)
  • 19. CZYM JEST TESTOWANIE CROSS-BROWSER? BrowserStack, Sauce Labs, LambdaTest – narzędzia, które umożliwiają testowanie aplikacji w różnych środowiskach przeglądarkowych bez potrzeby fizycznego posiadania każdej z przeglądarek czy urządzeń
  • 20. WADY I ZALETY TESTÓW AUTOMATYCZNYCH WADY - wysokie koszty początkowe, - konieczność utrzymania skryptów testowych - możliwość przeoczenia niektórych błędów, które mogą być dostrzeżone tylko przez ludzkie oko ZALETY - szybkość i dokładność - wykonywanie testów poza godzinami pracy - jeden z kroków do całkowitego zautomatyzowania procesu wytwarzania oprogramowania
  • 21. NARZĘDZIA DO TESTOWANIA AUTOMATYCZNEGO kodowanie narzędzia low-code, no-code, codeless
  • 22. AUTOMATYZACJA W OPARCIU O KOD wybrany język programowania + wybrany framework np. Python + Selenium Cypress + JavaScript Playwright + TypeScript czym jest framework? szkielet do budowy aplikacji lub platformy testującej rodzaj oprogramowania pomocniczego (biblioteki, dodatki, szablony)
  • 23. AUTOMATYZACJA W OPARCIU O KOD wymagane: - znajomość co najmniej jednego języka programowania - znajomość Gita (systemu kontroli wersji) - podstawowa wiedza na temat konfiguracji środowisk programistycznych (IDE) czym jest IDE? Integrated Development Environment zintegrowane środowisko programistyczne np. PyCharm, Visual Studio Code
  • 25. LOW-CODE, NO-CODE, CODELESS Low-code to podejście, które minimalizuje potrzebę pisania kodu Narzędzia low-code do testowania pozwalają na tworzenie testów z mniejszą ilością kodowania, co obniża próg wejścia. Rozwiązania no-code umożliwiają tworzenie testów bez pisania ani jednej linii kodu, wykorzystując interfejsy graficzne (GUI). Minus tych narzędzi: zwykle są płatne i to słono
  • 26. AUTOMATYZACJA W OPARCIU O LOW-CODE przykłady narzędzi: Leapwork, Tricentis Tosca, Ghost Inspector, TestSigma, Mabl
  • 30. - u siebie na lokalnym komputerze - w narzędziach CI/CD (GitLab, GitHub Actions), uruchamiane manualnie lub automatycznie - własne, dedykowane rozwiązania w chmurze lub/i w kontenerach (Docker) - na platformach low-code (z integracjami) GDZIE PUSZCZAĆ TESTY AUTOMATYCZNE?
  • 32. PRZYKŁAD DOBORU TESTÓW MANUALNYCH I AUTOMATYCZNYCH Produkt: edytor makiet 3D online Charakterystyka: istnieje od 6 lat, dużo funkcji, niezmienna “baza” funkcji, 3 razy w tygodniu dodawane drobne poprawki, a także nowe funkcjonalności Testy: oprócz testów nowych funkcjonalności, należy przed każdym wydaniem nowych zmian, przetestować cały system pod kątem regresji Nieefektywne podejście: Testy manualne regresji: zajmują 3-4 godziny, wykonywane co dwa dni, żmudne i męczące dla testera (po roku pracy wykonuje 156 praktycznie identycznych sesji) Efektywne podejście: zautomatyzowanie powtarzalnych ścieżek, manualne testowanie tylko nowych funkcjonalności
  • 33. Produkt: innowacyjna platforma do inwestycji Charakterystyka: istnieje od 3 miesięcy, co chwilę zmienia się koncept jej działania, autorzy poszukują wciąż nowych rozwiązań Testy: testy nowych funkcjonalności i testy całego systemu po każdej większej zmianie koncepcji Nieefektywne podejście: Automatyzacja każdej nowej funkcjonalności – podejście kosztowne, a bez gwarancji, że w przyszłości te funkcjonalności będą nadal częścią systemu Efektywne podejście: Testowanie manualne, zarówno przez zawodowych testerów, jak i np. w ramach programu wczesnego dostępu – przez użytkowników PRZYKŁAD DOBORU TESTÓW MANUALNYCH I AUTOMATYCZNYCH
  • 34. AUTOMATY JAKO PRZEPUSTKA DO “PRAWDZIWEGO” PROGRAMOWANIA? • Często kariera testera manualnego i potem automatyzacja testów są traktowane jako przepustka do “prawdziwego” programowania TAK Automatyzacja testów pozwala na praktyczne zastosowanie konceptów programistycznych Testowanie automatyczne może pomóc w zrozumieniu kodu produkcyjnego i procesów ciągłej integracji (CI/CD) NIE U testera lub QA inżyniera najważniejszy jest mindset i inne, całościowe spojrzenie na oprogramowanie oraz procesy ich tworzenia Pisanie skryptów automatycznych to tylko narzędzie, by realizować zadania zapewniania jakości
  • 35. BONUS DLA POCZĄTKUJĄCYCH CHCĘ BYĆ TESTEREM - CO ROBIĆ, JAK ŻYĆ? • Nie ma szans byś na początku wiedział/a wszystko  potrzebny jest plan • Lepiej skupić sie porządnie na kilku podstawowych tematach niż próbować na raz zrozumieć tzw. “wszystko” • Nie kłamiemy w CV • Angielski (ewentualnie niemiecki) • Ostrożnie dobieraj materiały i kursy – najlepiej z dobrymi opiniami lub z polecenia • Czas też kosztuje! Nie nabieraj się na darmowe, niskiej jakości webinary czy inne “programy”, które mają Cię na końcu przekonać do drogiego zakupu • Zaprzyjaźnij się z AI (np. ChatGPT jako asystent, mentor) • Kiedy coś nie idzie do przodu – zastanów się czy to naprawdę jest dla Ciebie
  • 36. BONUS DLA POCZĄTKUJĄCYCH CHCĘ BYĆ TESTEREM AUTOMATYZUJĄCYM • Próg wejścia jest dużo wyższy niż na stanowisko manualne • Lepiej jest popracować kilka miesięcy jako “manual” i zobaczyć: • jak od środka wygląda proces wytwarzania oprogramowania • czym się kierować wybierając przypadki testowe do automatyzacji • na własnej skórze poczuć “powtarzalność” lub nudę niektórych zadań (takie zadania są dobrymi kandydatami do automatyzacji) • Pamiętajcie, że automatyzacja testów to nie jedyna droga słusznego rozwoju 