Mockito (十)
Mockito 使用 thenReturn 设置方法的返回值
thenReturn 用来指定特定函数和参数调用的返回值。
比如:
import org.junit.Assert; import org.junit.Test; import static org.mockito.Mockito.*; import java.util.Random; public class MockitoDemo { @Test public void test() { Random mockRandom = mock(Random.class); when(mockRandom.nextInt()).thenReturn(1); Assert.assertEquals(1, mockRandom.nextInt()); } }
thenReturn 中可以指定多个返回值。在调用时返回值依次出现。若调用次数超过返回值的数量,再次调用时返回最后一个返回值。
import org.junit.Assert; import org.junit.Test; import static org.mockito.Mockito.*; import java.util.Random; public class MockitoDemo { @Test public void test() { Random mockRandom = mock(Random.class); when(mockRandom.nextInt()).thenReturn(1, 2, 3); Assert.assertEquals(1, mockRandom.nextInt()); Assert.assertEquals(2, mockRandom.nextInt()); Assert.assertEquals(3, mockRandom.nextInt()); Assert.assertEquals(3, mockRandom.nextInt()); Assert.assertEquals(3, mockRandom.nextInt()); } }
转载:https://www.letianbiji.com/java-mockito/mockito-thenreturn.html
带着疑问去思考,然后串联,进而归纳总结,不断追问自己,进行自我辩证,像侦查嫌疑案件一样看待技术问题,漆黑的街道,你我一起寻找线索,你就是技术界大侦探福尔摩斯