Testy jednostkowe (ang. Unit Testing)

Mateusz Juźwik
7 sierpnia 2023
Czas czytania: 2 minut

Spis treści

Testy jednostkowe (ang. Unit Testing) – co to jest?

Testy jednostkowe to rodzaj testowania oprogramowania, którego celem jest sprawdzenie, czy indywidualne jednostki lub komponenty aplikacji (np. funkcje, metody, klasy) działają poprawnie i zgodnie z założeniami. Testy jednostkowe skupiają się na pojedynczych fragmentach kodu, izolując je od reszty systemu, aby upewnić się, że dana jednostka działa zgodnie z oczekiwaniami.

 

Weź udział w szkoleniu (Nie-)Techniczny PM I

 

Jak działają testy jednostkowe?

Testy jednostkowe przeprowadzane są na najmniejszych, izolowanych fragmentach kodu, które nazywane są „jednostkami”. Jednostką może być pojedyncza funkcja, metoda, procedura, moduł lub obiekt w ramach kodu źródłowego.

 

Pisanie testów jednostkowych

Testy jednostkowe są zazwyczaj pisane przez programistów, którzy napisali kod, który jest testowany. Testy te są tworzone za pomocą specjalnych narzędzi do testowania jednostkowego, takich jak JUnit (dla Javy), NUnit (.NET), PyTest (Python) i wiele innych.

 

Izolacja jednostki kodu

Każda jednostka kodu jest testowana niezależnie od innych. Wszelkie zależności są na ogół zamockowane lub zastąpione „udawanymi” obiektami, aby zapewnić, że test skupia się tylko na jednostce, którą ma testować.

 

Sprawdzanie poprawności

Testy jednostkowe sprawdzają, czy dana jednostka kodu działa poprawnie w różnych warunkach. Na przykład, mogą sprawdzać, czy funkcja zwraca oczekiwany wynik dla danego zestawu danych wejściowych.

 

Automatyzacja

Testy jednostkowe są zazwyczaj zautomatyzowane i uruchamiane za każdym razem, gdy kod źródłowy jest zmieniany. To pozwala na szybkie wykrywanie problemów.

 

Regresja

Testy jednostkowe są często używane do testowania regresji, co oznacza sprawdzanie, czy zmiany w kodzie nie wpłynęły negatywnie na istniejące funkcje.

 

Testy jednostkowe są kluczowym elementem metodyk programowania, takich jak programowanie sterowane testami (TDD) i ciągła integracja (CI). Pomagają szybko wykrywać i naprawiać błędy, zanim kod zostanie zintegrowany z resztą systemu.

 

Weź udział w szkoleniu (Nie-)Techniczny PM I

Może Cię zainteresować

(Nie-)Techniczny PM I

Szkolenie online

PMasters Toolbox

Karty dobrych praktyk