Pytania otagowane jako mocking

Mockowanie i fałszowanie to sposoby na izolowanie kodu lub komponentów w celu zapewnienia, że ​​testy jednostkowe działają tylko na testowalnej jednostce kodu, bez faktycznego wykorzystywania innych komponentów lub zależności aplikacji. Mocking różni się od fałszowania tym, że można obejrzeć próbę, aby potwierdzić wyniki testu.


10
Jak wyśmiewać puste metody za pomocą Mockito
Jak wyśmiewać metody typu void return? Wdrożyłem wzorzec obserwatora, ale nie mogę kpić z Mockito, ponieważ nie wiem jak. Próbowałem znaleźć przykład w Internecie, ale mi się nie udało. Moja klasa wygląda następująco: public class World { List<Listener> listeners; void addListener(Listener item) { listeners.add(item); } void doAction(Action goal,Object obj) { …




6
Czy Mockito może przechwytywać argumenty metody wywoływanej wielokrotnie?
Mam metodę, która jest wywoływana dwukrotnie i chcę uchwycić argument drugiego wywołania metody. Oto, co próbowałem: ArgumentCaptor<Foo> firstFooCaptor = ArgumentCaptor.forClass(Foo.class); ArgumentCaptor<Foo> secondFooCaptor = ArgumentCaptor.forClass(Foo.class); verify(mockBar).doSomething(firstFooCaptor.capture()); verify(mockBar).doSomething(secondFooCaptor.capture()); // then do some assertions on secondFooCaptor.getValue() Ale dostaję TooManyActualInvocationswyjątek, ponieważ Mockito uważa, że doSomethingnależy to nazwać tylko raz. Jak mogę zweryfikować argument drugiego …

5
Użyj Mockito, aby wyśmiewać niektóre metody, ale nie inne
Czy jest jakiś sposób, za pomocą Mockito, wyśmiewać niektóre metody w klasie, ale nie inne? Na przykład w tej (wprawdzie wymyślonej) Stockklasie chcę wyśmiewać wartości getPrice()i getQuantity()zwracać wartości (jak pokazano w fragmencie testowym poniżej), ale chcę, getValue()aby wykonać mnożenie zgodnie z zakodowaniem w Stockklasie public class Stock { private final …
402 java  mocking  mockito 

2
Test Mockito metoda void zgłasza wyjątek
Mam metodę z voidtypem zwrotu. Może również generować wiele wyjątków, dlatego chciałbym przetestować zgłoszone wyjątki. Wszystkie próby zakończyły się niepowodzeniem z tego samego powodu: Metoda, w której (T) w typie Stubber nie ma zastosowania do argumentów (void) Wszelkie pomysły, w jaki sposób mogę uzyskać metodę zgłaszania określonego wyjątku? doThrow(new Exception()).when(mockedObject.methodReturningVoid(...));

3
Zwracana wartość, która została przekazana do metody
Mam metodę interfejsu: string DoSomething(string whatever); Chcę się z tego wyśmiewać za pomocą MOQ, aby zwracało to, co zostało przekazane - coś w stylu: _mock.Setup( theObject => theObject.DoSomething( It.IsAny<string>( ) ) ) .Returns( [the parameter that was passed] ) ; Jakieś pomysły?
390 c#  mocking  moq 

11
Wyśmiewanie metod statycznych za pomocą Mockito
Napisałem fabrykę do produkcji java.sql.Connectionprzedmiotów: public class MySQLDatabaseConnectionFactory implements DatabaseConnectionFactory { @Override public Connection getConnection() { try { return DriverManager.getConnection(...); } catch (SQLException e) { throw new RuntimeException(e); } } } Chciałbym zweryfikować przekazane parametry DriverManager.getConnection, ale nie wiem, jak wyśmiewać metodę statyczną. Używam JUnit 4 i Mockito do moich …

14
Jaka jest najlepsza fałszywa platforma dla Java? [Zamknięte]
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …

7
Jaka jest najlepsza strategia do testowania aplikacji opartych na bazie danych?
Pracuję z wieloma aplikacjami internetowymi, które są obsługiwane przez bazy danych o różnym stopniu złożoności w backend. Zazwyczaj istnieje warstwa ORM oddzielna od logiki biznesowej i prezentacji. To sprawia, że ​​testowanie jednostkowe logiki biznesowej jest dość proste; rzeczy mogą być zaimplementowane w modułach dyskretnych, a wszelkie dane potrzebne do testu …

4
Czy Mockito może zastosować metodę bez względu na argument?
Próbuję przetestować jakiś starszy kod, używając Mockito. Chcę wkleić plik FooDaoużywany w produkcji w następujący sposób: foo = fooDao.getBar(new Bazoo()); Umiem pisać: when(fooDao.getBar(new Bazoo())).thenReturn(myFoo); Ale oczywistym problemem jest to, że getBar()nigdy nie jest wywoływany z tym samym Bazooobiektem, dla którego zastosowałem metodę. (Przeklnij tego newoperatora!) Bardzo by mi się podobało, …

9
Używanie Mockito z wieloma wywołaniami do tej samej metody z tymi samymi argumentami
Czy istnieje sposób, aby metoda skrótowa zwracała różne obiekty przy kolejnych wywołaniach? Chciałbym to zrobić, aby przetestować nieokreślone odpowiedzi od ExecutorCompletionService. tj. w celu przetestowania, niezależnie od kolejności zwrotu metod, wynik pozostaje stały. Kod, który chcę przetestować, wygląda mniej więcej tak. // Create an completion service so we can group …
289 java  mocking  mockito 


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.