Luty 25, 2019

Java pytanie rekrutacyjne: Testy jednostkowe

Czym są testy jednostkowe?

Testy jednostkowe polegają na napisaniu kodu źródłowego, który wykonuje inny kod (produkcyjny) weryfikując poprawność jego działania. Jak sama nazwa wskazuje testujemy jednostki – czyli małe części – a dokładniej mówiąc metody. Mówiąc ściślej – metody publiczne traktując je jak czarne skrzynki. Dajemy konkretne dane wejściowe i oczekujemy poprawnych danych wyjściowych – żadnych innych. Jeśli test zapali się na czerwono (nie przejdzie) to są dwie możliwości: albo nasza metoda nie działa poprawnie, ale napisaliśmy źle test, dlatego aby uniknąć takiego problemu stosuje się metodykę Test Driven Development tzw. TDD.

Z założenia jeden test (w świecie idealnym) powinien sprawdzać jedną możliwość działania metody, bo jak wiemy niektóre metody mogą mieć wiele tzw. corner case, które powinniśmy sprawdzić.

Popularną bibliotekę ułatwiającą testy w Javie jest m.in. JUnit.