2016-09-20 101 views
0

http://mockito.org/网站中给出以下示例代码来描述mockito框架的用法。但是我无法理解下面的代码试图测试什么。请在下面的代码中对它进行评论,因为它正在测试什么。如果它正在测试列表的添加方法,它会有什么期望?描述Mockito示例代码

import static org.mockito.Mockito.*; 

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

// using mock object - it does not throw any "unexpected interaction" exception 
mockedList.add("one"); 
mockedList.clear(); 

// selective, explicit, highly readable verification 
verify(mockedList).add("one"); 
verify(mockedList).clear(); 

回答

0

在你的情况,你的测试准备

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

测试执行

// using mock object - it does not throw any "unexpected interaction" exception 
mockedList.add("one"); 
mockedList.clear(); 

和试验验证(不包括主要的Mockito的东西做这样的assertEquals

// selective, explicit, highly readable verification 
verify(mockedList).add("one"); 
verify(mockedList).clear(); 

最后一个块(测试verifaction)是测试中,如果

  • 的mockedList的附加方法,与等于字符串“一”
  • 的mockedList的明确方法被调用的参数称为

它是用嘲笑类的相互作用如何可以验证(因为你无法验证清单的内容,因为它已被嘲弄和add("one")clear()调用不改变只是一个基本的演示列表内容)。