2013-12-11 24 views
8

W JUnit/Mockito mamy 2 wyjątkowo użyteczne adnotacji: @Mock i @InjectMocks.@ Mock/@ InjectMocks dla Groovy - Spock

W moim nowym projekcie zacząłem używać groovy ze spockiem do testowania, zastanawiam się, czy istnieje zastąpienie wspomnianych adnotacji?

Odpowiedz

10

W Spocku nie ma żadnej potrzeby na @Mock, ponieważ istnieje już = Mock(), która może być używana wszędzie tam, gdzie można korzystać z adnotacji (a także w innych miejscach). Istnieje otwarte żądanie ściągnięcia dla @InjectMocks, ale nie zostało ustalone, czy taka funkcja spowoduje przejście do trybu spock-core lub sprint-guice. (Wysłanie tej funkcji za pomocą sprint-guice lub przynajmniej wymaganie Guice na ścieżce klasy, pozwoliłoby delegować zastrzyk do Guice, zamiast na nowo odkrywać koło.) Jeśli nie, @InjectMocks może być zawsze wysłany jako rozszerzenie Spocka innej firmy.

+0

Czy '@ InjectMocks' jest dostępny w dowolnym rozszerzeniu Spock innej firmy? Tęsknię za tą funkcją w Spocku. – TheKojuEffect

+1

https://github.com/marcingrzejszczak/spock-subjects-collaborators-extension –