从文档:
有时,对于同一方法调用,我们需要对不同的返回值/异常进行存根。典型的用例可能是模拟迭代器。Mockito的原始版本没有此功能来促进简单的模拟。例如,可以使用Iterable或简单地使用集合来代替迭代器。这些提供了自然的存根方式(例如使用真实集合)。但是,在极少数情况下,对连续调用进行存根可能会很有用:
when(mock.someMethod("some arg")) .thenThrow(new RuntimeException()) .thenReturn("foo");//First call: throws runtime exception:mock.someMethod("some arg");//Second call: prints "foo"System.out.println(mock.someMethod("some arg"));
因此,在您的情况下,您需要:
when(myMock.doTheCall()) .thenReturn("You failed") .thenReturn("Success");


