Mockowanie - serwis jest nullem

Mockowanie - serwis jest nullem
marcyse
  • Rejestracja:około 4 lata
  • Ostatnio:7 miesięcy
  • Postów:76
0

Kolejny raz dostaje błąd przy testowaniu metody serwisowej i mockowaniu.

Po odniesieniu się do metody, metoda wykorzystuje w sobie wywołania z innych serwisów / utilsów itp. Te wszystkie zewnętrzne usługi są nullami. Domyśliłem się, że w teście również muszę je zamockować @mock lecz moje transactionUtils podczas debugowania cały czas ustawione jest na nulla 😕

Kiedyś to naprawiłem totalnie przypadkiem, mógłby ktoś wytłumaczyć jaka jest poprawna zależność i dlaczego to tak działa?

createTransactionForGivenUser()
savedTransaction

edytowany 2x, ostatnio: flowCRANE
Grzyboo
  • Rejestracja:ponad 9 lat
  • Ostatnio:5 miesięcy
  • Postów:206
2

Mock mocka mockiem pogania. Nawet mi się nie chce pisać dlaczego te testy są bez sensu.

TransactionUtils wstrzykujesz poprzez pole, zamiast przez konstruktor, więc dlatego @InjectMocks nie wstrzykuje mocka TransactionUtils

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.