Test jednostkowy (ang. unit test) to w programowaniu metoda testowania tworzonego oprogramowania poprzez wykonywanie testów weryfikujących poprawność działania pojedynczych elementów (jednostek) programu - np. metod lub obiektów w programowaniu obiektowym lub procedur w programowaniu proceduralnym. Testowany fragment programu poddawany jest testowi, który wykonuje go i porównuje wynik (np. zwrócone wartości, stan obiektu, wyrzucone wyjątki) z oczekiwanymi wynikami - tak pozytywnymi, jak i negatywnymi (niepowodzenie działania kodu w określonych sytuacjach również może podlegać testowaniu)
Test jednostkowy to fragment kodu, który sprawdza inny fragment kodu”
Więcej: Test jednostkowy
Technika zwinna (agile), zaliczana także do programowania ekstremalnego.
Zalety:
Źródło: Test-driven development Wstęp do Test Driven Development (MSDN)
Narzędzia i biblioteki wspierające tworzenie testów, ich organizację, automatyzację wykonywania, raportowanie
public class BasicOperations
{
public int Add(int numberA, int numberB)
{
return numberA + numberB;
}
public int Subtract(int numberA, int numberB)
{
return numberA - numberB;
}
public int Multiply(int numberA, int numberB)
{
return numberA * numberB;
}
public int Divide(int numberA, int numberB)
{
return numberA / numberB;
}
}
Zazwyczaj przyjmuje formę wyrażenia logicznego, które zwraca albo prawdę albo fałsz. Stanowi więc doskonałe narzędzie, dzięki któremu możemy w prosty sposób, wychwycić błędy w pisanych aplikacjach.
Pokrycie kodu mierzy, ile procent kodu zostało sprawdzone przez testy jednostkowego. Przyjmuje się, że dobrze napisane testy powinny mieć pokrycie rzędu przynajmniej 70% . Wyróżniamy dwa sposoby wyliczania pokrycia: