在我的Mockito单元测试中,我试图模拟包含对象Message
实例的数组。为此,我试图像普通对象一样模拟它,所以像:
private var messagesMock = mock(Array<Message>::class.java)
这给出以下错误/异常:
org.mockito.exceptions.base.MockitoException:
Cannot mock/spy class [Lrobot.fsrt.robotguest.common.data.Message;
Mockito cannot mock/spy because :
- VM does not not support modification of given type
如何使用Mockito以正确的方式模拟数组?
一个独特的非答案:您(几乎(从不表示容器的模拟对象!
数组就是这样:一个容器。
您使用所需尺寸的容器创建容器,然后将模拟的对象放入中,并确保您的生产代码使用准备好的内容的容器。P>
这很简单:您不模拟数组,列表或地图:您按原样创建它们并操纵其 content !