Zasady testów jednostkowych

PodsumowanieLista

Testy jednostkowe mogą przyspieszać cykl wytwarzania oprogramowania i mogą ułatwiać wprowadzanie zmian. Dobrze zaprojektowane testy mogą zwiększać pewność refaktoryzacji i mogą sprzyjać praktykom TDD.

Zasady projektowe

Testy jednostkowe mogą:

  • nie używać I/O 1
  • wykonywać się w mniej niż sekundę w praktyce TDD 1
  • izolować logikę biznesową od zależności zewnętrznych
  • mieć jeden jasny cel i minimalny zestaw asercji

Organizacja i procesy

Małe, szybkie testy mogą wspierać częste uruchamianie całej puli i mogą ograniczać sprzężenia między modułami. Wstrzykiwanie zależności oraz stosowanie atrap, stubów lub mocków może ułatwiać izolację od bazy danych, sieci i systemu plików.

Ryzyko i ograniczenia

Nadmierna liczba mocków może utrudniać utrzymanie i może zaciemniać intencje testu. Testy obejmujące I/O mogą spowalniać feedback i mogą przesuwać się w stronę testów integracyjnych, co zmniejsza ich wartość w TDD 11.