@Autowired
ParkingController parkingController;
Ale ty nie mokujesz tego... tylko robisz automatyczne wiązanie do parking controlera, i tu wychodzi brak zrozumienia adnotacji. W tym wypadku powołujesz kontener springa do załadowania z kontekstu kontenera danego obiektu, ale w testach nie dysponujesz realnie Controllerem.
Jak dodam wcześniej parkingService = mock(ParkingService.class)
okej inicjujesz mocka, ale jeśli dalej zostawiasz @Autowired to nie zadziała są dwie alternatywy, albo mokujesz metodą, albo adnotacją, jeśli dany mock- nie jest obiektem zależnym tzn zagnieżdżonym.
@Mock
ParkingController parkingController;
Więc żeby Cię naprwadzić dlaczego masz błąd pozostaje mi powiedzieć jedno : nie ucz się na pałe bez zrozumienia i nie korzystaj z czegoś, jeśli nie wiesz jaki mechanizm działania za tym stoi, czemu tak twierdze? Bo to wina adnotacji i widzę to po nich, że dodałeś je nie wiedząc po co, ale metoda prób i błędów + fakt żeby działało najpierw do kompilacji
- importy nie widzę, ale nie potrzebuje bo pewnie też jest problem na tej płaszczyźnie korzystasz z 2 rozwiązań testowania w 1 klasie testowej- a chcesz używać raz X z jednej biblioteki oraz Y z drugiej do tego samego
@AutoConfigureMockMvc
@ExtendWith(SpringExtension.class)
@WebMvcTest(controllers = ParkingController.class)
Pobaw się z @RunWith(MockitoJUnitRunner.class)