what is early testing
Co to jest wczesne testowanie?
Testowanie oprogramowania powinno rozpocząć się na wczesnym etapie cyklu życia oprogramowania. Pomaga to wychwycić i wyeliminować defekty na wczesnych etapach SDLC, tj. W fazie gromadzenia wymagań i projektowania. Wczesne rozpoczęcie testowania pomaga zmniejszyć liczbę defektów i ostatecznie koszt ponownej obróbki.
Różne aspekty Wczesne testy które pomogłyby kierownikom i liderom QA podczas opracowywania lub opracowywania dokumentu Strategii testowania w SDLC, są wyjaśnione tutaj.
Przyjęcie wczesnego testu w ogromnym stopniu zaowocuje pomyślną dostawą produktu wysokiej jakości.
Pod koniec tego samouczka Czytelnicy, kierownicy ds. Kontroli jakości, leady i testerzy będą mieli rzetelną wiedzę na temat poniższych pojęć:
czym są testy beta w testowaniu oprogramowania
- Dlaczego wczesne testy w SDLC (projekt lub wersja oprogramowania)?
- Zakres działań związanych z wczesnym testowaniem
- Co przetestować wcześnie?
- Uruchom i zakończ
- Plusy i minusy
Przyjrzyjmy się teraz szczegółowo niuansom !!
Czego się nauczysz:
- Zasady testowania
- Dlaczego wczesne testy w SDLC?
- Zakres wczesnych testów
- Co przetestować wcześnie?
- Uruchamiaj i zamykaj we wczesnym teście
- Plusy i minusy
- Wniosek
- rekomendowane lektury
Zasady testowania
Rysunek 1 - Uproszczony widok zasad testowania
W przypadku danego oprogramowania lub wersji systemu lub produktu w SDLC istnieją różne dobrze zdefiniowane metodologie lub strategie dla większości poniższych Zasad testowania.
- Co to jest testowanie?
- Dlaczego testowanie?
- Co przetestować?
- Jak testować?
Jednak niektóre z najczęściej zadawanych pytań, które wielu Czytelników, testerów, potencjalnych klientów i kierowników kontroli jakości zadawałoby lub chciałoby uzyskać większą jasność, obejmują (szary obszar w Ryc.1 )
- Kiedy rozpocząć testowanie w wersji oprogramowania, a kiedy testowanie w projekcie?
- Kiedy zacząć testować, a kiedy zakończyć?
- Dlaczego testy w SDLC powinny rozpoczynać się wcześnie?
- Co to jest wczesny test w tworzeniu oprogramowania?
Aby ułatwić zrozumienie publiczności, wszystkie pytania dotyczące „szarej strefy” zgrupowałem pod jednym parasolem Wczesne testy.
Dlaczego wczesne testy w SDLC?
Omówmy niektóre wydarzenia i czynności, które są częścią testów.
Zwykle Zespół Zarządzający Programem przydziela Kierownika Programu (PM) do danej Wersji Oprogramowania lub Projektu. Kierownik projektu we współpracy ze wszystkimi interesariuszami, w tym zespołami ds. Marketingu, rozwoju, kontroli jakości i wsparcia, opracowuje harmonogram wydań
W tym samouczku wybrałem Kwartalny harmonogram wydań za pomocą model wodospadu aby wyjaśnić Wczesne koncepcje testowania szczegółowo.
Harmonogram testowania wersji oprogramowania
Większość organizacji nadal postępuje zgodnie z tradycją Wydanie na czas (TBR) modele, w których planowane są wydania oprogramowania lub produktu z dostawą kwartalną, półroczną lub roczną.
Do wykonywania takich wydań Oprogramowania używany jest głównie model Waterfall. W niektórych przypadkach dla krótszego cyklu wydawniczego przyjmuje się model Agile / Scrum.
Rysunek 2 - Typowy kwartalny harmonogram testowania wersji (nie jest to ogólny harmonogram projektu ani harmonogramu wydań)
Wpływ wad krytycznych lub defektów o dużej wadze
Rycina 3 - Typowy wpływ krytycznych defektów
Głównie oczekuje się, że w trakcie testowania
- Testerzy identyfikują i zapisują wady krytyczne lub o dużej wadze.
- Programiści będą musieli naprawić te usterki.
- Następnie testerzy będą musieli zweryfikować poprawki.
Po drugie , wiele organizacji zajmujących się inżynierią produktów i oprogramowania powszechnie uznaje, że naprawianie i weryfikowanie poważnych lub krytycznych błędów w bardzo dużej liczbie jest
- Czasochłonne
- Pozyskiwanie zasobów (człowiek + maszyna)
- Podatne na poboczne, naprawianie krytycznych błędów najczęściej dotyka dużej części kodu, w tym obszarów skrzyżowań.
W końcu , jeśli duża liczba krytycznych błędów zostanie znaleziona pod koniec danego wydania, to ma miejsce jeden lub więcej z następujących negatywnych wydarzeń.
- Wysokie prawdopodobieństwo wydłużenia cyklu testowego.
- Wysokie prawdopodobieństwo przekroczenia terminu wydania.
- Konkretna funkcja mająca dużą liczbę defektów może wymagać usunięcia wszystkich razem z tego konkretnego wydania.
- Brakuje zobowiązań klienta.
A co z innymi wadami?
Istnieją defekty o średnim i niskim priorytecie, które zostaną zidentyfikowane i zarejestrowane przez Testerów. Te również muszą być odpowiednio obsługiwane przez zespół programistów i zespół ds. Zapewnienia jakości. Zatem ogólnie jest to obszerne ćwiczenie.
Nie ma Silver Bulleta
Powszechnie wiadomo, że żadna ilość Testów nie jest w stanie wykryć wszystkich defektów, które posiada Oprogramowanie lub System. Oznacza to, że praktycznie nie ma końca testowania ani produkt jest wolny od wad.
Jednak z „ Serwisowalność Z punktu widzenia modelu konkurencji i czasu wprowadzenia produktu na rynek (TTM) istnieje potrzeba przełamania typowego sposobu myślenia, aby odkryć maksymalne defekty na wczesnym etapie cyklu wydania, w szczególności identyfikację defektów krytycznych i poważnych.
Każde z powyższych będzie miało negatywny wpływ na działalność Organizacji. W tym kontekście przyjęcie „ Wczesne testy 'Mieć osobna czynność testowa będzie korzystny dla ogólnego zarządzania SDLC dla danego Projektu lub Wersji.
Zakres wczesnych testów
Po zrozumieniu celu testowania wcześnie w poprzedniej sekcji zatytułowanej „ Dlaczego wczesne testy? ”, Omówmy teraz„ Zakres wczesnych testów ' szczegółowo.
Ponieważ wprowadzamy Wczesne testowanie jako nowe działanie, które ma być śledzone wyłącznie w trakcie wykonywania testów, zaleca się przećwiczenie zakresu prac testowych, jak wyjaśniono poniżej
Założenie:
- Harmonogram całego projektu lub wydania oprogramowania jest zatwierdzany i udostępniany wszystkim zainteresowanym stronom.
- Dokument ogólnej strategii testów jest opracowywany, przeglądany i zatwierdzany przez wszystkich interesariuszy.
- Testowane funkcje o wysokim, średnim i niskim priorytecie są dobrze udokumentowane.
- Plany testów i przypadki testowe dla wszystkich funkcji są opracowywane, weryfikowane i zatwierdzane przez wszystkich interesariuszy.
- Wszystkie plany testów i przypadki testowe są przesyłane do centralnego repozytorium w celu śledzenia wykonywania testów.
- Wszystkie zasoby ludzkie, wyposażenie infrastruktury i narzędzia są dostępne do ustawiania stanowiska testowego i wykonywania planów testów.
Co przetestować wcześnie?
Ryc.4 - Ogólne podejście do zakresu wczesnego testowania
Podejście
- Weźmy Przykład wersji XYZ posiadającej 3 funkcje A, B i C o wysokim priorytecie, 10 funkcji o średnim priorytecie i 15 funkcji o niskim priorytecie (lub o niskim priorytecie).
- Funkcje o wysokim priorytecie to te, które generują wysokie przychody i / lub zgodność z normami i / lub nadrabianie zaległości przez konkurenta i / lub przewagę konkurencyjną i wszystkie te elementy.
- Funkcje o wysokim priorytecie zwykle obejmują skomplikowane kodowanie, dodawanie dużej liczby nowych linii kodu.
- Duża liczba nowych linii kodu może również oznaczać wysokie prawdopodobieństwo obszarów przecięcia.
- Zazwyczaj funkcje o wysokim priorytecie i / lub funkcje, które mają dużą liczbę nowych wierszy kodu, są najlepszymi kandydatami do wczesnego testowania.
- Nie ma potrzeby opracowywania oddzielnego planu testów do celów wczesnego testowania.
- Kierownicy ds. Kontroli jakości lub testerzy wraz z kierownikami ds. Rozwoju lub MŚP (ekspertami merytorycznymi) muszą omówić i uzgodnić zakres Kodeksu / testów dla tego działania testowego.
- Zidentyfikuj odpowiednie przypadki testowe o wysokim priorytecie, a nawet niektóre przypadki testowe o średnim priorytecie, jeśli uważasz, że jest to konieczne z każdej funkcji Plany testów A, B i C.
- Po zidentyfikowaniu odpowiednich funkcji i podzbioru przypadków testowych należy upewnić się, że są one śledzone za pomocą narzędzia do śledzenia testów przyjętego przez organizację.
Podpowiedź: współpraca to podstawa! Podczas wczesnych testów zarówno zespoły programistyczne, jak i zespoły kontroli jakości muszą ściśle współpracować, aby mieć pewność, że wyznaczone cele są osiągane z wysokiej jakości wynikami.
Uruchamiaj i zamykaj we wczesnym teście
Ważne jest, aby zarówno zespół deweloperski, jak i zespół ds. Zapewnienia jakości przeprowadzili burzę mózgów i zgodzili się na wszystkie podejścia związane z całą aktywnością wczesnego testu, w tym daty rozpoczęcia i zakończenia, tak aby wszystkie były na tej samej stronie.
Kryteria wejścia na start
- Procent ukończenia testów integracyjnych
- Liczba otwartych błędów
- Brak blokerów do rozpoczęcia wczesnego testu
Faza aktywności
- Śledzenie postępów
- Liczba spadków kodu podczas tego testu
- Podejście do naprawy błędów
- Podejście do weryfikacji błędów
- Zapisz wyniki testu
Kryteria wyjścia
- Przekaż czynności do następnej fazy testowania (zwykle testowanie funkcji).
- Rozwiązanie nierozwiązanych błędów znalezionych podczas wczesnego testu.
- Rozwiązanie ewentualnych blokerów do następnej fazy testowania.
- Publikuj wyniki wczesnych testów.
Plusy i minusy
Każda nowa inicjatywa lub działanie ma swoje zalety i wady.
Przeanalizujmy zalety i wady tego podejścia do testowania.
Plusy
- Idealnie pasuje do modelu Waterfall.
- Pomaga wykryć krytyczne błędy na wczesnym etapie cyklu testowania.
- Identyfikacja krytycznych błędów na wczesnym etapie cyklu wydawniczego.
- Pomaga zespołowi programistycznemu we wczesnej stabilizacji Kodeksu.
- Pomaga zminimalizować zabezpieczenia dzięki poprawkom błędów.
- Pomaga zespołowi programistycznemu szczegółowo zidentyfikować luki w obszarach skrzyżowań na wczesnym etapie cyklu wydawania.
- Zespół Zarządzający może z należytą starannością podejmować odpowiednie decyzje biznesowe dotyczące nierozwiązanych krytycznych błędów w tej konkretnej Wersji lub Projekcie.
- Pomaga przedłużyć pokrycie testu i efektywnie jeździć na rowerze.
- Pomaga w wydajnej i skutecznej dystrybucji zasobów programistycznych i testowych.
Cons
- Nie jest idealnie dopasowany do modelu Agile / Scrum. Jednak takie modele mogą przyjąć wczesny test w sprintach po odpowiednim dostosowaniu.
- Istnieje szansa na zmniejszenie Testy integracyjne przez zespół deweloperski.
Wniosek
Klienci lub użytkownicy końcowi kupują lub przyjmują produkt, system lub rozwiązanie związane z obsługą serwisową. Podstawowym wymaganiem jest walidacja oprogramowania działającego w takim systemie lub produktach pod kątem możliwości serwisowania
Kluczowe elementy Zasad testowania, takie jak Dlaczego testować? Co to jest testowanie? Co przetestować? Jak testować? są w większości dobrze zdefiniowane i zrozumiane. Istnieją jednak pewne pytania, które wciąż pojawiają się w świadomości Czytelników, Testerów, Potencjalnych Klientów i Kierowników w zakresie pojęć takich jak wczesne testowanie.
Przyjęcie Wczesnego Testowania jako integralnego działania ogólnego Harmonogramu Testów dla dowolnego Projektu Oprogramowania lub Wersji ogromnie pomaga Organizacji w dostarczaniu solidnego kwalifikowanego Produktu lub Systemu.
Czy zdałeś sobie kiedyś sprawę, jak ważne w Twojej karierze są wczesne testy? Zapraszam do dzielenia się swoimi przemyśleniami i doświadczeniami w sekcji komentarzy poniżej !!
rekomendowane lektury
- Najlepsze narzędzia do testowania oprogramowania 2021 (Narzędzia do automatyzacji testów QA)
- Przewodnik po testowaniu przenośności z praktycznymi przykładami
- Asystent testowania oprogramowania
- Praktyczne testowanie oprogramowania - nowy BEZPŁATNY eBook (Pobierz)
- Testy alfa i testy beta (kompletny przewodnik)
- Kurs testowania oprogramowania: Do którego Instytutu Testowania Oprogramowania mam dołączyć?
- Wybór testowania oprogramowania jako swojej kariery
- Testowanie oprogramowania Praca pisarz treści technicznych Freelancer