how select correct test cases
Nadeszła era automatyzacji testów . Większość projektów testowych próbuje przełożyć swoje ręczne przypadki testowe na zautomatyzowane, aby poprawić produktywność i zasięg.
Jednym z kluczowych kroków do rozpoczęcia testów automatyzacji jest - wybranie odpowiednich przypadków testowych i określenie ROI (zwrotu z inwestycji).
Czego można się spodziewać po tym artykule?
W tym artykule postarałem się przytoczyć kilka ważnych punktów w oparciu o moje doświadczenie, aby pomóc Ci wybrać odpowiedniego kandydata automatyzację i określić różne inne czynniki, które przyniosą lepsze wyniki testów i korzyści.
Dlaczego testy automatyczne?
Automatyzacja nie przytłacza ani nie zastępuje testów ręcznych, ale je uzupełnia. Podobnie jak ręczna, automatyzacja potrzebuje strategii z odpowiednim planowaniem, monitorowaniem i kontrolą. Poprawnie wdrożona automatyzacja może stać się atutem zespołu, projektu i ostatecznie organizacji.
Automatyzacja ma wiele zalet; oto kilka ważnych, o których warto wspomnieć:
- Przydatne do wykonywania rutynowych zadań, takich jak Testy dymu i Testy regresji .
- Przydatne w przygotowaniu Dane testowe .
- Pomaga wykonać Przypadki testowe obejmujące złożoną logikę biznesową .
- Dobrze jest wykonywać przypadki testowe na różnych platformach (jak różne systemy operacyjne, przeglądarki itp.)
- Świetne do wykonywania przypadków testowych, które są nieco trudne do wykonania ręcznie.
- Gdy liczba iteracji wykonań przypadku testowego nie jest znana.
Wiele razy interesariusze uważają, że automatyzacja testów działa jako narzędzie pomocnicze w testowaniu ręcznym, dlatego ważne jest, aby zrozumieć, że automatyzacja jest najlepszym sposobem na zwiększenie skuteczności, wydajności i zakresu testowania. Nie tylko oszczędza czas, ale także poprawia dokładność, ponieważ powtarzalne zadania wykonywane ręcznie mogą być podatne na błędy ludzkie i mogą być czasochłonne.
Kandydaci do automatyzacji
Podstawowy błąd, którego należy unikać:
Jednym z najbardziej podstawowych błędów popełnianych przez testerów jest NIE wybieranie prawidłowych przypadków testowych do automatyzacji.
Nie wybieraj po prostu dowolnego zestawu testów. Dokładnie przeanalizuj przypadki testowe i wybierz kandydatów do automatyzacji biorąc pod uwagę najważniejszy czynnik, jakim jest zwrot z inwestycji. Po pierwsze, powinniśmy zrozumieć i znaleźć sposoby na uzyskanie wyższego i dodatniego zwrotu z inwestycji.
skąd wziąć filmy rzeczywistości wirtualnej
( ROI - zwrot z inwestycji - Jest to kalkulacja korzyści pod względem oszczędności kosztów, zwiększonej wydajności i jakości)
Nie ma standardowej procedury określania prawidłowych przypadków testowych do automatyzacji. Wszystko zależy od testowanej aplikacji.
Opierając się na moim doświadczeniu, spróbowałem zapisać kilka kroków, które mogą zapewnić pewien wgląd w wybór przypadków testowych i ostatecznie przejść do osiągnięcia dodatniego zwrotu z inwestycji w automatyzację.
Zobacz także => Jak przetłumaczyć ręczne przypadki testowe na skrypty automatyzacji?
Czego się nauczysz:
Jak wybrać prawidłowe przypadki testowe do testowania automatycznego
Krok 1:
Określ parametry, na których będziesz opierać swój przypadek testowy jako kandydata do automatyzacji.
Na razie identyfikuję poniższe parametry, możesz mieć własne parametry w zależności od aplikacji.
- Przypadek testowy wykonany z różnymi zestawami danych.
- Przypadek testowy wykonany w różnych przeglądarkach.
- Przypadek testowy wykonany w różnych środowiskach.
- Przypadek testowy wykonany ze złożoną logiką biznesową
- Przypadek testowy wykonany z innym zestawem użytkowników
- Przypadek testowy obejmuje dużą ilość danych
- Przypadek testowy ma dowolną zależność
- Przypadek testowy wymaga specjalnych danych
Krok 2:
Podziel każdą aplikację na moduły. Dla każdego modułu przeanalizuj i spróbuj zidentyfikować przypadki testowe, które powinny zostać zautomatyzowane na podstawie parametrów. Ta lista będzie się różnić w zależności od projektów i może być również ulepszana w zależności od potrzeb:
Rys 1.0
Y: Tak
N - Nie
W podobny sposób w przypadku wszystkich modułów lista ta może służyć do identyfikacji przypadków testowych kandydujących do automatyzacji.
Krok 3 :
Skonsoliduj i pogrupuj liczbę przypadków testowych dla każdego modułu pokazanego poniżej
Rys 2.0
Rysunek 2.0 jest dość prosty i nie wymaga wyjaśnień. Tutaj próbuję określić ilościowo szczegóły i podać oszacowanie, aby ręcznie zakończyć testy.
Krok 4:
Po zidentyfikowaniu wszystkich szczegółowych szczegółów poziomu możesz przedstawić je w poniższy sposób. Jesteśmy teraz w trakcie obliczania zwrotu z inwestycji.
Rys. 3.0:
Powinniśmy również wziąć pod uwagę poniższe atrybuty stanowiące podstawę do powstrzymania zwrotu z inwestycji :
- Koszt zakupu i licencji narzędzia
- Czas opracować skrypty
- Czas zająć się skryptami.
- Czas na analizę wyników ręcznie i automatycznie
- Czas i koszt szkolenia zasobów.
- Koszty zarządzania
Przykład obliczania zwrotu z inwestycji w automatyzację testów
W większości przypadków ROI jest obliczany na 5 lat, ale nie jest to obowiązkowe. W oparciu o powyższe czynniki spróbuję rozwinąć kalkulację zwrotu z inwestycji za 5 lat. Jak zwykle, zawsze możesz go dostosować i ulepszyć.
* ROI = (skumulowane oszczędności / inwestycje dzięki automatyzacji) * 100
Podręcznik do testów automatycznych - jakie są wyzwania związane z procesem?
Próbowałem przytoczyć punkty, które moim zdaniem są dużym wyzwaniem, gdy próbujemy zautomatyzować zestaw testów.
# 1) Potrzeba automatyzacji: Każdy zespół testowy jest wyjątkowy i ma wyłączną potrzebę automatyzacji. Nie możemy opracować stałego standardu, ale możemy dostosować standard, który będzie odpowiadał naszym potrzebom. Z tego powodu automatyzacja wymaga dobrego wsparcia ze strony kierownictwa, a także zespołu programistów.
# 2) Automatyzacja całego wniosku: Automatyzacja aplikacji w 100% to duże zadanie. Nie znaczy to, że jest to niemożliwe, ale wymaga odpowiedniego planowania i monitorowania i oczywiście; czasami. Istnieje wiele permutacji i kombinacji danych, n liczba środowisk z n liczbą atrybutów uwierzytelniania i autoryzacji, które wymagają walidacji, a zatem wymagają strategii automatyzacji.
# 3) Mentalność ręczna kontra automatyka: ' Zwykle automatyzujemy, co jest ważne i powtarzalne, ale wolimy ręcznie testować ważne funkcje ”. Zmieszany? Nawet ja !! Ale to jest fakt. Powinniśmy mieć kryteria, które zadecydują, które są ważny przypadki testowe. Kryteria te mogą opierać się na wielu czynnikach, takich jak złożona logika biznesowa, obszary, które są bardziej interesujące dla klientów, obszary podatne na ryzyko itp.
# 4) Decydowanie o ramach: Projektowanie szkieletu jest najważniejszym aspektem automatyzacji. Uważam, że powinniśmy poświęcić stosunkowo więcej czasu na opracowanie frameworka niż na skrypt. Zawsze, gdy tworzymy plan automatyzacji, głównym celem powinno być projektowanie frameworka.
PLANUJ zaprojektować szkielet. Zidentyfikuj i zrób listę kontrolną elementów, które będą tworzyć ramy. Jeśli framework jest solidny, pisanie skryptów i konserwacja stają się łatwe.
# 5) Znajomość zespołu: Ilekroć myślimy o automatyzacji, od razu przechodzimy do nauki języka programowania lub języka skryptowego. Nauka tego języka z pewnością pomoże, ale większy nacisk należy położyć na budowanie i rozwijanie logiki.
Za automatyzację nie powinna odpowiadać garstka zasobów, raczej cały zespół powinien się do niej przyczyniać. Pomoże to nie tylko podnieść umiejętności zasobów, ale także utrzymać motywację .
# 6) Raportowanie: Każde narzędzie ma standard raportowania wyników testów. Aby go dostosować; to trudne zadanie. Raportowanie wyników testów wymaga również koordynacji i konserwacji, co zwiększa koszty.
# 7) Zaufanie: Powinniśmy ufać naszemu zespołowi automatyzacji. Inwestujemy roboczogodziny, aby zbudować pakiet automatyzacji, ale nadal nie wierzymy w wyniki testów. Należy dołożyć starań, aby zachować skrypty. Powinniśmy również zauważyć, że zespół, który przeprowadza ręczne testowanie aplikacji, powinien być zaangażowany w jej automatyzację, ponieważ zna swoją aplikację.
W większości przypadków automatyzacją zajmuje się trzeci zespół, więc rzeczywisty zespół testujący nie jest świadomy skryptów i ostatecznie wykonuje testy ręcznie, ponieważ czuje, że kontynuuje skrypty, dodaje do swoich zadań
Zobacz też=> Wyzwania związane z testowaniem ręcznym i automatycznym.
Wniosek
W większości przypadków wolimy Zautomatyzuj pakiet regresji ( oto kilka wyzwań związanych z automatyzacją zestawu regresji w zwinnym środowisku ), ponieważ zawiera większą liczbę przypadków testowych. W takim przypadku możemy rozbić kombinezony regresji na mniejsze kombinezony i zdecydować o uruchomieniu odpowiedniego zestawu zgodnie z wymaganiami wydania.
Załóżmy, że zestaw regresji zawiera 1500 przypadków testowych, możesz podzielić go na 3 zestawy po 500 przypadków testowych na zestaw i zautomatyzować.
tworzenie projektu java w eclipse
Zamiast automatyzować cały pakiet, możesz zdecyduj się na automatyzację fazową . Innymi słowy, możesz podążać za prototypowym modelem tworzenia pakietu automatyzacji. Utwórz strukturę lub framework z implementacją mniejszej liczby przypadków testowych i zacznij używać tego i stopniowo ulepszaj go, dodając do niego więcej przypadków testowych.
Powinniśmy postępować zgodnie z Koło Deminga (cykl PDCA) również do automatyzacji. Będąc aktywnością ciągłą, należy położyć nacisk na prawidłowe zbudowanie ram co zaowocuje łatwością obsługi i wdrażania nowych funkcji.
Wymaga odpowiedniego wsparcia od zespołu deweloperskiego, a także od kierownictwa. Powinniśmy zachęcić zespół testujący do jak największego wkładu w testowanie automatyczne, ponieważ znają swój produkt lepiej niż ktokolwiek inny.
O autorze: To jest artykuł gościnny autorstwa Shilpy Chatterjee Roy. Od 8,5 lat zajmuje się testowaniem oprogramowania w różnych dziedzinach.
Mam nadzieję, że uprościliśmy to„Podręcznik do testów automatycznych”proces. Podziel się swoim doświadczeniem i przemyśleniami na temat tego, jak pokonujesz wyzwania związane z procesem.
POPRZEDNIA samouczek | NEXT Tutorial
rekomendowane lektury
- Jak przetłumaczyć ręczne przypadki testowe na skrypty automatyzacji? - Przewodnik krok po kroku z przykładem
- Wyzwania związane z testowaniem ręcznym i automatycznym
- Co to jest automatyzacja testów (kompletny przewodnik po rozpoczęciu automatyzacji testów)
- 10-etapowy proces testowania automatyzacji: Jak rozpocząć testy automatyczne w Twojej organizacji
- 25 najlepszych struktur testowania Java i narzędzi do testowania automatycznego (część 3)
- Ponad 20 najlepszych narzędzi do testowania automatyzacji Open Source w 2021 roku
- 10 najważniejszych strategii i najlepszych praktyk w zakresie automatyzacji testów
- Kiedy wybrać testy automatyczne?