Wszystkie testy nie powinny zmieniać stanu aplikacji. Stan powinien być resetowany po teście, aby przywrócić stan podstawowy.
Testy powinny być niezależne. Złą praktyką jest poleganie na kolejności wykonywania testów, czyli pisanie testów zależnych od siebie.
Tutaj przychodzą z pomocą adnotacje:
@beforeEach
@afterEach
Są one wykonywane:
@afterEach – przed każdym teście w klasie
@beforeEach – po każdym teście w klasie
To podstawowe mechanizmy Junit.