0

大家好,我目前正在编写 mockito 测试,我遇到了一些我无法模拟的东西,如下所示:

SEOKey seoKey = new SEOKey(seoEntityId, SEOEntityType.valueOf(seoEntityType));

4

2 回答 2

1

我不认为 Mockito 允许您模拟new方法。您需要做的是使用 PowerMockitowhenNew方法。

像这样的东西(如果很重要,请随意添加您的论点):

PowerMockito.whenNew(SEOKey.class).withNoArguments().thenReturn(seoKeyMock);

请记住使用您的类声明将您尝试测试的类添加到@PrepareForTest注释中。这应该是针对您正在测试的类,而不是您为其调用new方法的类。

于 2015-08-28T13:37:56.753 回答
0

你可以

@Mock
private SEOKey key;

@Before
public void setup(){
MockitoAnnotations.initMocks(this);
}

然后该成员被嘲笑。

另一种可能性是直接在测试方法中进行模拟:

SEOKey key = Mockito.mock(SEOKey.class);
于 2017-01-30T12:55:42.763 回答