Project Quality
  • Home
  • Blog
  • 18 Narzędzi dla testera
  • Testowanie oprogramowania dla początkujących
  • Kontakt
13 maja, 2021 przez admin

Testy automatyczne vs. testy manualne

Testy automatyczne vs. testy manualne
13 maja, 2021 przez admin

Testy automatyczne vs. testy manualne

Testy automatyczne czy testy manualne, oto jest pytanie. Czy w świecie gdzie co raz więcej procesów w tym testów podlega automatyzacji, testowanie manualne posiada jakiekolwiek zalety? Czy świat IT potrzebuje testów manualnych, czy może da się zapewnić odpowiednią jakość tylko i wyłącznie za pomocą automatyzacji?

Dziś we wpisie poruszymy temat poszczególnych zalet i wad automatyzacji oraz testowania manualnego.

Zalety automatyzacji

Odciążenie z powtarzalnych testów

Manualne testy regresji to jedna z największych zmór zespołów testerskich. Wykonywanie tych samych manualnych przypadków dziesiątki razy to często droga do przeoczenia defektu jeśli stanie na naszej drodze. Automatyzacja może odciążyć zespół z tego mozolnego procesu, przez co możemy poświęcić zasoby na bardziej kreatywne i skuteczne metody wyszukiwania kolejnych defektów.

Mniejsze ryzyko błędu ludzkiego

Manualne wykonywanie takich przypadków często może spowodować znużenie i brak czujności testera. Automatyzacja tego aspektu da nam nie tylko większe bezpieczeństwo, ale także większą pewność co do wyników wykonywanych testów.

Szybkość

W przypadku kiedy mówimy o testach automatycznych, należy też wspomnieć o szybkości. Tutaj na każdej warstwie wygra automatyzacja. W zależności od warstwy wyniki testów otrzymamy w milisekundach bądź minutach (maksymalnie godzinach).

Inaczej sprawa wygląda jeśli mówi o testowaniu manualnym, tutaj raczej musimy estymować godziny bądź dni. W zależności od naszych zasobów w dziale oraz ilości przypadków testowych.

Powtarzalność i elastyczność

Zautomatyzowane testy możemy uruchamiać o każdej porze dnia i nocy na dowolnej liczbie wersji/instancji. Pozwala nam to zebrać informację zwrotną o przeprowadzonych testach, na wielu wersjach oprogramowania co może pozwolić naprawić szybciej ewentualne błędy.

Wady automatyzacji

Wysoki koszt inwestycji, aby otrzymać zwrot

Często, aby wdrożyć odpowiednią strategię automatyzacji testów, trzeba zainwestować dużo czasu zespołu w przygotowaniu pod taką organizację projektu oraz oczywiście napisać testy.

Mimo dużej inwestycji z czasem widać zysk w postaci szybszej możliwości tworzenia bezpiecznych wydań czy aplikacji, która zawiera mniejszą ilość błędów.

Zespół testerski/QA potrafiący programować (czasem proces wymaga czasu)

W zależności od organizacji może się okazać, że zespół testerski będzie potrzebował dodatkowych szkoleń, aby osiągnąć poziom pozwalający pisać dobrej jakości testy automatyczne. Taki proces zazwyczaj potrzebuje czasy, aby testy były pisane na odpowiednim poziomie.

Zalety testów manualnych

Odpowiednie wykorzystanie testów manualnych może również pomóc nam w zbudowaniu aplikacji wysokiej jakości. Kluczem do sukcesu w tym obszarze jest położenie nacisku tam, gdzie automatyzacja nie da nam aż tak dokładnego feedbacku.

Wynajdywanie defektów, których automatyzacja nie może znaleźć

Zaoszczędzony czas przez wykonywanie testów automatycznych można poświęcić na testy eksploracyjne czy wykonywanie bardziej kreatywnych przypadków testowych. Takie zachowanie może pozwolić nam na zalezienie w aplikacji wielu defektów które możliwe, że zostałyby przeoczone stosując tylko automatyzację.

Rzeczy, które ciężko zautomatyzować

W przypadku bardzo skomplikowanych systemów może się okazać, że niektóre akcje o wiele sprawniej będzie wykonać i zweryfikować testem manualnym. Warto to rozważyć w obszarach gdzie automatyzacja danego procesu zajęłyby bardzo dużo czasu bądź sam test z różnych powodów mógłby być niestabilny.

Poprawa aspektów apliakcji, które niekoniecznie są opisane w specyfikacji

Czasem tester z doświadczeniem podczas testów manualnych potrafi zasugerować zmiany, które poprawią komfort używania danej aplikacji. Może się to dziać na warstwie UX, logiki i flow w aplikacji. Wszystkie takie drobne zmiany powodują, że końcowemu użytkowniki wygodniej się korzysta z aplikacji, którą wytwarzamy co jest zdecydowanie wpływa na ich zadowolenie

Wady testów manualnych

Możliwość przeoczenia regresji

Szczególnie podczas dużych manualnych testów regresji jesteśmy na to narażeni, że zespół testerski z powodu mozolnego sprawdzania straci skupienie, przez co przeoczy defekt. W tym wypadku często automatyzacja będzie lepszym wyborem w tej dziedzinie.

Konsumpcja czasu

Testy manualne mimo tego, że często dają olbrzymią wartość dla jakości w projekcie, zawsze będą wolniejsze od wykonujących się testów automatycznych. W tym wypadku trzeba mieć tego świadomość i stosować je w miejscach, gdzie mogą dać nam „największy zwrot z inwestycji”.

Testy automatyczne czy manualne?

Moim subiektywnym zdaniem nie ma tutaj zwycięzcy. Aby zapewnić jakość aplikacji oraz szybkie dostarczanie w projekcie potrzebujemy obydwóch rodzajów testów.

Testy automatyczne mogą pozwolić nam na szybkie weryfikowanie regresji czy sprawdzanie w tym samym czasie wielu wersji aplikacji, z kolei manualne wypełnią lukę i zapewnią jakość, których w obszarach, w których nie będą do tego zdolne automaty.

Musimy patrzeć na pryzmat jakości szerzej niż tylko typ testów, jaki stosujemy w projekcie. Warto rozważać zalety i wady każdego z rozwiązań i stosować je odpowiednio do projektu.

A Ty co sądzisz o testach automatycznych i manualnych, uważasz, że projekt może istnieć bez jednych bądź drugich? Daj znać w komentarzu: )

Każdy tester potrzebuje dobrych narzędzi 💻

Zapisz się do newslettera i poznaj 18 narzędzi które wspierają pracę testera!

Twój dokument już czeka na Ciebie 🎉

Wejdź na swoją skrzynkę e-mail i pobierz dokument „18 narzędzi dla testera aplikacji webowych”

.

Więcej postów dla początkujących testerów znajdziesz tutaj

Photo by Jason Leung on Unsplash

Podziel się:

  • Twitter
  • Facebook
Poprzedni wpisPodsumowanie 3 roku pracy jako QA EngineerNastępny wpis Selenide automatyzacja testów - tworzymy kolejne testySelenide automatyzacja testów

2 komentarzy

Wojtazzz pisze:
17 maja, 2021 o 7:09 am

Jako dev, jestem dużym zwolennikiem automatów, szczególnie od czasu, gdy poznałem cypressa. Fakt że stawianie projektu trwa parę minut i można przystąpić do pisania pierwszych scenariuszy niweluje wcześniejszą wadę nakładu czasu. Pozostaje przystosowanie projektu od strony inicjalizacji danych/sesji. Dodatkowe różne poziomy pisanych testów pozwalają pokryć poboczne scenariusze i tym samym QA może się skupić na znajdowaniu edge case’ow, o których dev nie pomyślał. Tutaj nie widzę innej opcji niż manualne.

Odpowiedz
admin pisze:
17 maja, 2021 o 8:59 pm

Myślę, że dużo tutaj zależy od projektu oraz stanu, w jakim się znajduje. Inną inwestycją będzie pisanie testów do systemu, który przykładowo istnieje kilka lat i nigdy nie posiadał testów (nadrobienie tego aspektu spali dużo czasu) a inną inwestycję poniesiemy w momencie kiedy aplikacja od samego początku miała pisane testy i trzeba je na bieżąco modyfikować/dopisywać.

Ważnym aspektem jest również czy architektura naszej aplikacji spełnia warunek architektury testowalnej, w przypadku braku spełniania tego warunku pojawia się kolejny problem, który może podnieść czas zwrotu z inwestycji.

Co do testerów/QA firmy różnie definiują tą rolę, od sprawdzania edge case’ów po robienie code review testów unitowych.

Odpowiedz

Dodaj komentarz Anuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Ostatnie wpisy

7 zasad testowania w 5 minut8 stycznia, 2022
Role w obszarze zapewniania jakości18 grudnia, 2021
Shift-left testing, czyli testuj jak najwcześniej25 listopada, 2021

Kategorie

  • Automatyzacja testów
  • Kariera testera
  • Narzędzia
  • podsumowanie
  • Produktywność
  • programowanie
  • Quality
  • Testowanie oprogramowania
  • Testowanie oprogramowania podstawy
  • ui
  • Uncategorized
  • warsztaty

Wpadnij na nasze social media

Jeśli jesteś pasjonatem jakości dołącz do naszej grupy!

Polityka prywatności

Rife Wordpress Theme ♥ Proudly built by Apollo13

About This Sidebar

You can quickly hide this sidebar by removing widgets from the Hidden Sidebar Settings.

Ostatnie wpisy

7 zasad testowania w 5 minut8 stycznia, 2022
Role w obszarze zapewniania jakości18 grudnia, 2021
Shift-left testing, czyli testuj jak najwcześniej25 listopada, 2021

Kategorie

  • Automatyzacja testów
  • Kariera testera
  • Narzędzia
  • podsumowanie
  • Produktywność
  • programowanie
  • Quality
  • Testowanie oprogramowania
  • Testowanie oprogramowania podstawy
  • ui
  • Uncategorized
  • warsztaty

Meta

  • Zaloguj się
  • Kanał wpisów
  • Kanał komentarzy
  • WordPress.org