PLAN TESTU: Co to jest, jak tworzyć (na przykładzie)

Plan testów

Test Plan jest szczegółowy dokument opisujący strategię badań, cele, harmonogram, oszacowanie, wyniki, i zasoby niezbędne do przeprowadzenia testów dla oprogramowania. Plan testów pomaga nam określić wysiłek potrzebny do sprawdzenia jakości testowanej aplikacji. Plan testów służy jako plan prowadzenia działań testowych oprogramowania jako zdefiniowany proces, który jest szczegółowo monitorowany i kontrolowany przez kierownika testów.

Zgodnie z definicją ISTQB: „Plan testów to dokument opisujący zakres, podejście, zasoby i harmonogram planowanych czynności testowych”.

Zacznijmy od następującego przykładu / scenariusza planu testów: Na spotkaniu chcesz omówić plan testów z członkami zespołu, ale oni nie są zainteresowani -.

W takim razie co zrobisz? Wybierz odpowiedź, jak na poniższym rysunku

A) Jestem managerem i robię wszystko, co powiedziałem
B) OK, pozwól mi wyjaśnić, dlaczego potrzebujemy
niepoprawnego
planu testów. Jako kierownik testów, musisz wyjaśnić im znaczenie planu testów, zamiast zmuszać zespół do robienia tego, co chcesz. Poprawnie
Jako Kierownik Testów musisz wyjaśnić im znaczenie planu testów, zamiast zmuszać zespół do robienia tego, co chcesz.

Jakie jest znaczenie planu testów?

Sporządzenie dokumentu planu testów ma wiele zalet

  • Pomóż osobom spoza zespołu testowego, takim jak programiści, menedżerowie biznesowi, klienci, zrozumieć szczegóły testowania.
  • Plan testów kieruje naszym myśleniem. To jest jak zbiór zasad, których należy przestrzegać.
  • Ważne aspekty, takie jak szacowanie testów, zakres testów, strategia testów są udokumentowane w Planie testów, dzięki czemu mogą być przeglądane przez Zespół Zarządzający i ponownie wykorzystywane w innych projektach.

Jak napisać plan testów

Wiesz już, że stworzenie Planu Testów jest najważniejszym zadaniem Procesu Zarządzania Testami. Wykonaj siedem poniższych kroków, aby utworzyć plan testów zgodnie z IEEE 829

  1. Przeanalizuj produkt
  2. Zaprojektuj strategię testów
  3. Zdefiniuj cele testu
  4. Zdefiniuj kryteria testu
  5. Planowanie zasobów
  6. Zaplanuj środowisko testowe
  7. Harmonogram i kosztorys
  8. Określ elementy dostarczane do testów

Krok 1) Przeanalizuj produkt

Jak możesz przetestować produkt bez żadnych informacji na jego temat? Odpowiedź jest niemożliwa. Musisz dokładnie nauczyć się produktu, zanim go przetestujesz.

Testowanym produktem jest serwis bankowy Guru99. Należy zbadać klientów i użytkowników końcowych, aby poznać ich potrzeby i oczekiwania względem aplikacji

  • Kto będzie korzystał z serwisu?
  • Do czego jest to używane?
  • Jak to będzie działać?
  • Z jakiego oprogramowania / sprzętu korzysta produkt?

Możesz użyć następującego podejścia do analizy witryny

Teraz zastosujmy powyższą wiedzę do prawdziwego produktu: Przeanalizujmy stronę bankową http://demo.guru99.com/V4.

Powinieneś rozejrzeć się po tej witrynie, a także przejrzeć dokumentację produktu. Przegląd dokumentacji produktu pomoże Ci zrozumieć wszystkie funkcje strony internetowej, a także jak z niej korzystać. Jeśli nie masz jasności co do jakichkolwiek elementów, możesz przeprowadzić wywiad z klientem, programistą, projektantem, aby uzyskać więcej informacji.

Krok 2) Opracuj strategię testową

Strategia testów jest krytycznym krokiem w tworzeniu planu testów w testowaniu oprogramowania. Dokument strategii testów jest dokumentem wysokiego poziomu, który jest zwykle opracowywany przez Kierownika Testów. Ten dokument określa:

  • Cele testowe projektu i środki do ich osiągnięcia
  • Określa nakłady i koszty związane z testowaniem

Wracając do swojego projektu, musisz opracować strategię testów do testowania tej bankowej witryny internetowej. Należy wykonać poniższe czynności

Krok 2.1) Zdefiniuj zakres testowania

Przed rozpoczęciem jakichkolwiek czynności testowych należy poznać zakres testów. Musisz dobrze się nad tym zastanowić.

  • Elementy testowanego systemu (sprzęt, oprogramowanie, oprogramowanie pośrednie itp.) Są zdefiniowane jako „ objęte zakresem
  • Elementy systemu, które nie będą testowane, również należy jasno zdefiniować jako „ poza zakresem ”.

Zdefiniowanie zakresu projektu testowego jest bardzo ważne dla wszystkich interesariuszy. Pomaga ci w tym precyzyjna luneta

  • Daj każdemu pewność i dokładne informacje na temat przeprowadzanych testów
  • Wszyscy członkowie projektu będą mieli jasne zrozumienie tego, co jest testowane, a co nie

Jak określasz zakres swojego projektu?

Aby określić zakres, musisz -

  • Precyzyjne wymagania klienta
  • Budżet projektu
  • Specyfikacja produktu
  • Umiejętności i talent Twojego zespołu testowego

Teraz należy jasno zdefiniować „w zakresie” i „poza zakresem” testowania.

  • Zgodnie ze specyfikacją wymagań oprogramowania, projekt Guru99 Bank koncentruje się wyłącznie na testowaniu wszystkich funkcji i zewnętrznego interfejsu strony internetowej Guru99 Bank ( w zakresie testowania)
  • Testy niefunkcjonalne, takie jak testy obciążeniowe , wydajność lub logiczna baza danych, obecnie nie będą testowane. ( poza zakresem)

Scenariusz problemu

Klient chce, abyś przetestował jego API. Ale budżet projektu na to nie pozwala. W takim przypadku co zrobisz?

Cóż, w takim przypadku trzeba przekonać klienta, że ​​testowanie Api to dodatkowa praca i pochłonie spore zasoby. Daj mu dane potwierdzające twoje fakty. Powiedz mu, czy testowanie Api jest objęte zakresem, budżet wzrośnie o kwotę XYZ.

Klient wyraża zgodę i odpowiednio nowe zakresy, pozycje spoza zakresu są

  • Elementy objęte zakresem: Testowanie funkcjonalne, Testowanie API
  • Pozycje poza zakresem: Testowanie bazy danych, sprzęt i wszelkie inne interfejsy zewnętrzne

Krok 2.2) Zidentyfikuj typ badania

Badanie typu jest standardową procedurę testową, która daje oczekiwany wynik testu.

Każdy typ testów ma na celu zidentyfikowanie określonego rodzaju błędów produktu. Jednak wszystkie typy testów mają na celu osiągnięcie jednego wspólnego celu „ Wczesne wykrycie wszystkich defektów przed wydaniem produktu klientowi”

Na poniższym rysunku opisano powszechnie używane typy testów

Powszechnie używane typy testów

Istnieje mnóstwo typów testowania do testowania oprogramowania. Twój zespół nie może mieć wystarczająco dużo wysiłku, aby poradzić sobie z wszelkiego rodzaju testami. Jako Kierownik Testów musisz ustawić priorytet Typów Testowania

  • Na jakich typach testów należy się skupić podczas testowania aplikacji internetowych?
  • Które typy testów należy zignorować, aby zaoszczędzić na kosztach?
Teraz poćwiczmy Twój projekt. Produkt, który chcesz przetestować, to strona bankowa.
Na jakich typach testów należy się skupić w tym przypadku?
Wybierz wszystko, co ma zastosowanie
A) Testowanie jednostkowe B) Testowanie API C) Testowanie integracyjne D) Testowanie systemu E) Testowanie instalacji / deinstalacji F) Testowanie zwinne Wybieramy tylko B) Testowanie API C) Testowanie integracji D) Testowanie systemu dla projektu Guru99




Krok 2.3) Udokumentuj ryzyko i problemy

Ryzyko to niepewne zdarzenie przyszłości z prawdopodobieństwem wystąpienia i możliwością straty. Kiedy ryzyko faktycznie się pojawia, staje się „ problemem”.

W artykule Analiza ryzyka i rozwiązanie zapoznałeś się już szczegółowo z analizą „Ryzyka” i zidentyfikowałeś potencjalne ryzyka w projekcie.

W planie testów QA udokumentujesz te ryzyka

Ryzyko Łagodzenie
Członek zespołu nie ma umiejętności wymaganych do testowania strony internetowej. Zaplanuj szkolenie, aby podszkolić swoich członków
Harmonogram projektu jest zbyt napięty; ciężko jest ukończyć ten projekt na czas Ustaw priorytet testu dla każdego działania testowego.
Kierownik Testów ma słabe umiejętności zarządzania Zaplanuj szkolenie z przywództwa dla menedżera
Brak współpracy negatywnie wpływa na produktywność Twoich pracowników Zachęcaj każdego członka zespołu do wykonywania jego zadania i inspiruj go do większego wysiłku.
Błędne oszacowanie budżetu i przekroczenie kosztów Ustal zakres przed rozpoczęciem pracy, przywiązuj dużą wagę do planowania projektu oraz na bieżąco śledź i mierz postępy

Krok 2.4) Utwórz logistykę testową

W Logistyce Testów Kierownik Testów powinien odpowiedzieć na następujące pytania:

  • Kto będzie testował?
  • Kiedy odbędzie się test?

Kto będzie testował?

Możesz nie znać dokładnych nazw testerów, którzy będą testować, ale można zdefiniować typ testera .

Aby wybrać odpowiedniego członka do określonego zadania, musisz rozważyć, czy jego umiejętności kwalifikują się do zadania, czy nie, a także oszacować budżet projektu. Wybranie niewłaściwego członka dla zadania może spowodować niepowodzenie lub opóźnienie projektu .

Do testowania oprogramowania najlepiej nadaje się osoba posiadająca następujące umiejętności:

  • Umiejętność zrozumienia punktu widzenia klienta
  • Silne pragnienie jakości
  • Dbałość o szczegóły
  • Dobra współpraca

W Twoim projekcie osobą odpowiedzialną za wykonanie testów jest tester. Bazując na budżecie projektu, możesz wybrać jako testera członka in-source lub outsourcingu.

Kiedy odbędzie się test?

Działania testowe muszą być dopasowane do powiązanych działań programistycznych.

Rozpoczniesz testowanie, gdy masz wszystkie wymagane elementy pokazane na poniższym rysunku

Krok 3) Zdefiniuj cel testu

Cel testu to ogólny cel i osiągnięcie wykonania testu. Celem testowania jest znalezienie jak największej liczby defektów oprogramowania; upewnij się, że testowane oprogramowanie jest wolne od błędów przed wydaniem.

Aby zdefiniować cele testu, należy wykonać 2 następujące kroki

  1. Wymień wszystkie funkcje oprogramowania (funkcjonalność, wydajność, GUI…), które mogą wymagać przetestowania.
  2. Zdefiniuj cel lub cel testu w oparciu o powyższe cechy

Zastosujmy te kroki, aby znaleźć cel testowy twojego projektu testowego Guru99 Bank

Możesz wybrać metodę „ TOP-DOWN” , aby znaleźć funkcje witryny, które mogą wymagać przetestowania. W tej metodzie można rozbić testowaną aplikację na komponent i komponent podrzędny .

W poprzednim temacie przeanalizowałeś już specyfikacje wymagań i przeszedłeś przez witrynę, dzięki czemu możesz utworzyć mapę myśli, aby znaleźć funkcje witryny w następujący sposób

Ten rysunek przedstawia wszystkie funkcje, które może mieć strona internetowa Guru99.

Opierając się na powyższych cechach, możesz zdefiniować cel testu projektu Guru99 w następujący sposób

  • Sprawdź, czy funkcjonalność witryny Guru99 (konto, wpłata …) działa zgodnie z oczekiwaniami bez żadnych błędów lub błędów w rzeczywistym środowisku biznesowym
  • Sprawdź, czy zewnętrzny interfejs witryny internetowej, taki jak interfejs użytkownika, działa zgodnie z oczekiwaniami i spełnia potrzeby klienta
  • Sprawdź użyteczność strony internetowej. Czy te funkcjonalności są wygodne dla użytkownika, czy nie?

Krok 4) Zdefiniuj kryteria testu

Kryteria testu to norma lub reguła, na której można oprzeć procedurę testową lub ocenę testu. Istnieją 2 rodzaje kryteriów testowych, jak poniżej

Kryteria zawieszenia

Określ krytyczne kryteria zawieszenia testu. Jeśli kryteria zawieszenia zostaną spełnione podczas testowania, aktywny cykl testu zostanie zawieszony do czasu rozstrzygnięcia kryteriów .

Przykład planu testów: Jeśli członkowie zespołu zgłaszają, że 40% przypadków testowych zakończyło się niepowodzeniem, należy zawiesić testowanie do czasu, aż zespół programistów naprawi wszystkie przypadki, które się nie powiodły.

Kryteria wyjścia

Określa kryteria, które oznaczają pomyślne zakończenie fazy testowej. Kryteria zakończenia to docelowe wyniki testu, które są niezbędne przed przejściem do kolejnej fazy rozwoju. Przykład: 95% wszystkich krytycznych przypadków testowych musi przejść pomyślnie.

Niektóre metody definiowania kryteriów wyjścia polegają na określeniu docelowej szybkości uruchamiania i szybkości zdawalności .

  • Szybkość uruchamiania to stosunek liczby wykonanych przypadków testowych do łącznej liczby przypadków testowych specyfikacji testów. Na przykład specyfikacja testu ma łącznie 120 TC, ale tester wykonał tylko 100 TC, więc szybkość uruchamiania wynosi 100/120 = 0,83 (83%)
  • Wskaźnik pomyślności to stosunek liczby przypadków testowych, które przeszły pomyślnie / wykonanych przypadków testowych . Na przykład w przypadku ponad 100 wykonanych TC pomyślnie przeszło 80 TC, więc współczynnik pozytywnego wyniku wynosi 80/100 = 0,8 (80%)

Te dane można pobrać w dokumentach Test Metric.

  • Kurs run rate musi wynosić 100%, chyba że podano wyraźny powód.
  • Poziom zdawalności zależy od zakresu projektu, ale osiągnięcie wysokiego wskaźnika zdawalności jest celem.

Przykład planu testów: Twój zespół wykonał już testy. Zgłaszają wynik testu i chcą, abyś potwierdził kryteria zakończenia.

W powyższym przypadku wskaźnik Run jest obowiązkowy i wynosi 100%, ale zespół testowy ukończył tylko 90% przypadków testowych. Oznacza to, że kurs uruchomienia nie jest spełniony, więc NIE potwierdzaj kryteriów wyjścia

Krok 5) Planowanie zasobów

Plan zasobów to szczegółowe podsumowanie wszystkich typów zasobów wymaganych do wykonania zadania projektowego. Zasoby mogą obejmować ludzi, sprzęt i materiały potrzebne do ukończenia projektu

Planowanie zasobów jest ważnym czynnikiem planowania testów, ponieważ pomaga w określaniu na liczbę zasobów (pracowników, sprzętu ...) do wykorzystania w projekcie. Dlatego Kierownik Testów może dokonać prawidłowego harmonogramu i oszacowania projektu.

Ta sekcja przedstawia zalecane zasoby dla Twojego projektu.

Zasoby ludzkie

Poniższa tabela przedstawia różnych członków zespołu projektowego

Nie.

Członek

Zadania

1.

Kierownik testów

Zarządzaj całym projektem

Zdefiniuj kierunki projektu

Zdobądź odpowiednie zasoby

2.

Próbnik

Identyfikacja i opis odpowiednich technik / narzędzi testowych / architektury automatyzacji

Zweryfikuj i oceń podejście testowe

Wykonanie testów Zaloguj wyników, raport wad.

Tester może być członkami zewnętrznymi lub zewnętrznymi, w oparciu o budżet projektu

W przypadku zadań, które wymagały niewielkich umiejętności, polecam wybranie zewnętrznych członków, aby zaoszczędzić na kosztach projektu.

3.

Deweloper w teście

Zaimplementuj przypadki testowe, program testowy, zestaw testów itp.

4.

Administrator testów

Tworzy i zapewnia zarządzanie i konserwację środowiska testowego oraz zasobów

Wspieraj Testera, aby używał środowiska testowego do wykonywania testów

5.

Członkowie SQA

Przejmij odpowiedzialność za zapewnienie jakości

Sprawdź, czy proces testowania spełnia określone wymagania

Zasoby systemowe

W przypadku testowania aplikacji internetowej należy zaplanować zasoby zgodnie z następującymi tabelami:

Nie.

Zasoby

Opisy

1.

serwer

Zainstaluj testowaną aplikację internetową

Obejmuje to oddzielny serwer WWW, serwer bazy danych i serwer aplikacji, jeśli ma to zastosowanie

2.

Narzędzie testowe

Narzędzie testujące ma zautomatyzować testowanie, symulować działanie użytkownika, generować wyniki testów

Istnieje mnóstwo narzędzi testowych, których możesz użyć w tym projekcie, takich jak Selenium, QTP… itd.

3.

Sieć

Potrzebujesz sieci obejmującej LAN i Internet, aby symulować rzeczywiste środowisko biznesowe i użytkownika

4.

Komputer

Komputer, którego użytkownicy często używają do łączenia się z serwerem WWW

Krok 6) Zaplanuj środowisko testowe

Co to jest środowisko testowe

Środowisko testowe to zestaw oprogramowania i sprzętu, na którym zespół testujący będzie wykonywał przypadki testowe. Środowisko testowe składa się z rzeczywistego środowiska biznesowego i środowiska użytkownika , a także środowisk fizycznych, takich jak serwer, środowisko uruchomieniowe front-end.

Jak skonfigurować środowisko testowe

Wracając do swojego projektu, jak skonfigurować środowisko testowe dla tej bankowej witryny internetowej?

Aby ukończyć to zadanie, potrzebujesz silnej współpracy pomiędzy Zespołem Testowym a Zespołem Deweloperskim

Należy zadać deweloperowi kilka pytań do zrozumienia aplikację internetową badanego wyraźnie . Oto kilka zalecanych pytań. Oczywiście w razie potrzeby możesz zadać inne pytania.

  • Jakie jest maksymalne połączenie użytkownika, które ta witryna może obsługiwać w tym samym czasie?
  • Jakie są wymagania sprzętowe / programowe do zainstalowania tej witryny?
  • Czy komputer użytkownika potrzebuje jakichś szczególnych ustawień do przeglądania strony internetowej?

Poniższy rysunek przedstawia środowisko testowe serwisu bankowego www.demo.guru99.com/V4

Krok 7) Harmonogram i kosztorys

W artykule Estymacja testów wykorzystałeś już kilka technik do oszacowania nakładu pracy potrzebnego do ukończenia projektu. Teraz powinieneś uwzględnić to oszacowanie, jak również harmonogram, w Planowaniu testów

W fazie testowania szacowania załóżmy, że podzielisz cały projekt na małe zadania i dodasz oszacowanie dla każdego zadania, jak poniżej

Zadanie

Członkowie

Oszacuj wysiłek

Utwórz specyfikację testu

Projektant testów

170 roboczogodzin

Wykonaj wykonanie testu

Tester, Administrator Testów

80 roboczogodzin

Sprawozdanie z badań

Próbnik

10 roboczogodzin

Dostawa testowa

20 roboczogodzin

Całkowity

280 roboczogodzin

Następnie tworzysz harmonogram wykonania tych zadań.

Tworzenie harmonogramu to termin używany w zarządzaniu projektami. Tworząc solidny harmonogram w Planowaniu testów, Kierownik Testów może go używać jako narzędzia do monitorowania postępu projektu, kontrolowania przekroczenia kosztów.

Aby utworzyć harmonogram projektu, Kierownik Testów potrzebuje kilku rodzajów danych wejściowych, jak poniżej:

  • Pracownik i termin realizacji projektu : Dni robocze, termin realizacji projektu, dostępność zasobów to czynniki, które wpłynęły na harmonogram
  • Oszacowanie projektu : Na podstawie oszacowania Kierownik Testów wie, ile czasu zajmie ukończenie projektu. Dzięki temu może sporządzić odpowiedni harmonogram projektu
  • Ryzyko projektowe : Zrozumienie ryzyka pomaga Kierownikowi Testów poświęcić wystarczająco dużo czasu na harmonogram projektu, aby poradzić sobie z ryzykiem

Przećwiczmy na przykładzie:

Załóżmy, że szef chce ukończyć projekt Guru99 w ciągu jednego miesiąca, już oszacowałeś wysiłek dla każdego zadania w Test Estimation. Możesz utworzyć harmonogram jak poniżej

Krok 8) Przetestuj elementy dostarczane

Materiały testowe to lista wszystkich dokumentów, narzędzi i innych komponentów, które muszą być opracowane i utrzymywane w celu wsparcia wysiłków testowych.

Istnieją różne wyniki testów na każdym etapie cyklu życia oprogramowania.

Wyniki testów są dostarczane przed fazą testowania.

  • Dokument planów testów.
  • Dokumenty przypadków testowych
  • Specyfikacje projektu testów.

Wyniki testów są dostarczane podczas testowania

  • Skrypty testowe
  • Symulatory.
  • Dane testowe
  • Macierz śledzenia testów
  • Dzienniki błędów i dzienniki wykonania.

Wyniki testów są dostarczane po zakończeniu cykli testowania.

  • Wyniki testów / raporty
  • Raport wady
  • Wytyczne dotyczące procedur instalacji / testowania
  • Informacje o wydaniu

Zasoby

Pobierz przykładowy szablon planu testów

Pobierz przykładowy plan testów systemu ze strony internetowej Guru99 Bank

Interesujące artykuły...