Poziom i typy testów

Tworząc testy oprogramowania należy najpierw poznać ich typy. Istnieje wiele różnych typów testów oprogramowania. Jednym z popularnych podziałów jest dzielenie testów z uwagi na etap (poziom) na jakim są wykonywane.

https://cdn.xyzedge.com.pl/codehub/tester/tester.png

Testy jednostkowe

Testy jednostkowe sprawdzają mały fragment kodu oprogramowania. Zazwyczaj ten rodzaj testów pisany jest przez programistów w celu upewnienia się, że wprowadzane zmiany spełniają określone kryteria i są wolne od defektów, które mogłyby wyjść na etapie integracji z innymi bibliotekami lub modułami. Testy jednostkowe dotyczą np. klas, funkcji, schematów baz danych i innego rodzaju fragmentów kodu wchodzących w skład szerszej całości.

Testy integracyjne

Testy integracyjne służą do zweryfikowania czy odpowiednie podsystemy współgrają ze sobą i są w stanie komunikować przy pomocy odpowiednich interfejsów. Testy tego rodzaju mają na celu wczesne wykrycie defektów podsystemach lub modułach. Testowane w ten sposób mogą być interfejsy, mikro usługi, bazy danych i podsystemy.

Testy regresyjne

Testy regresyjne sprawdzają czy wprowadzone zmiany nie wpływają na już istniejące funkcjonalności. Od testów jednostkowych i integracyjnych różnią się tym, że nie służą do weryfikacji czy wprowadzane zmiany spełniają założone kryteria a wyłącznie czy nie zmieniają dotychczasowego zachowania.

Testy systemowe

Testy systemowe weryfikują czy dostarczane rozwiązania jako całość spełniają wymagania biznesowe. Tego rodzaju testy są przeprowadzane w środowiskach zbliżonych do produkcyjnych (finalnych, na których będzie uruchamiane oprogramowanie). Na tym etapie testuje się funkcje z perspektywy klienta końcowego. Powszechnym sposobem testowania jest sprawdzenie zachowania pod kątem specyfikacji wymagań i przypadków użycia przez klienta końcowego.

Testy akceptacyjne

Testy akceptacyjne są zazwyczaj finalnym etapem testowania oprogramowania. Są to testy, które sprawdzają zachowanie programu w zderzeniu z kryteriami akceptacji i przepisami prawa. Ich źródłem może być przykładowo umowa między przedstawicielami biznesów, dokumentacja operacyjna, założenia, zgodność z procedurami, normy lub standardy. W praktyce na tym etapie angażowane są uprawnione do odbioru oprogramowania osoby w celu podjęcia decyzji.

Inny podział testów

Testy mogą być także podzielone z uwagi na sposób ich przeprowadzania. Zaliczamy do nich:

  • testy funkcjonalne (black-box, z ang. czarno-skrzynkowe) - pozwalają sprawdzić zgodność konkretnej funkcji systemu z oczekiwaniami bez wglądu w wewnętrzną strukturę systemu,
  • testy niefunkcjonalne - pozwalają ocenić charakterystykę i klasyfikację systemów,
  • testy white-box (z ang. biało-skrzynkowe) - testy z wglądem w wewnętrzną strukturę oprogramowania w celu lepszego poznania systemu,

W tym kursie zajmiemy się przygotowaniem testów z perspektywy zewnętrznego testera oprogramowania. Będziemy tworzyć testy na styku testów integracyjnych, regresyjnych i systemowych.


Nasza strona internetowa używa plików cookies (tzw. ciasteczka) w celach statystycznych, reklamowych oraz funkcjonalnych. Dowiedz się więcej jak je wyłączyć. Ta strona jest chroniona przez reCAPTCHA i Google polityka prywatności Google i regulamin Google.

logo

Copyright © 2021 CodeHub.pl