简体   繁体   中英

Mockito - what does verify method do?

Let's say i have the following psuedo like test code:

 //Let's import Mockito statically so that the code looks clearer
 import static org.mockito.Mockito.*;

 //mock creation
 List mockedList = mock(List.class);

 //using mock object
 mockedList.add("one");
 mockedList.clear();

 //what do these two verify methods do ?
 verify(mockedList).add("one");
 verify(mockedList).clear();

I keep showing the test passed but i dont know what the verify means? what is it verifying exactly? I understand that i mocked a call to add and clear but what does the two verify calls do?

Mockito.verify(MockedObject).someMethodOnTheObject(someParametersToTheMethod); verifies that the methods you called on your mocked object are indeed called. If they weren't called, or called with the wrong parameters, or called the wrong number of times, they would fail your test.

It asserts that the method was called, and with those arguments.

Comment out:

//mockedList.add("one");

Or change its argument and the test will fail.

The verify() method in Mockito is used to check if a method of an object was called. It is used to make sure that the method was called with certain parameters, the number of times it was called, etc.

// Example:

// Create a mock object of a class 
MyClass mockClass = Mockito.mock(MyClass.class); 

// Call a method on the mock object 
mockClass.doSomething(); 

// Verify that the doSomething() method was called 
Mockito.verify(mockClass).doSomething();

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM