摩a的方法无法访问

  • 本文关键字:访问 方法 mockito
  • 更新时间 :
  • 英文 :


我在项目上使用此Maven行进行了Mockito设置:

<dependency>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-all</artifactId>
    <version>1.8.5</version>
    <scope>test</scope>
</dependency>

我使用@Mock注释没有问题,但我无法访问和使用诸如:

的摩擦摩托方法
when(someMock.someMethod()).thenReturn();

食物只是无法识别它们。

请帮助。

尝试调用Mockito.when(foo.getBar()).thenReturn(baz)Mockito.verify(foo).getBar(),它不依赖于静态导入。与@Mock注释不同,从技术上讲是一类,whenverify是Mockito类中的静态方法。

一旦您有工作,请尝试David所暗示的静态导入:

import static org.mockito.Mockito.when;   // ...or...
import static org.mockito.Mockito.*;      // ...with the caveat noted below.

这将允许您在不指定Mockito类的情况下使用Mockito.when。您也可以使用通配符,但是这样一个回答Java文档建议谨慎使用通配符 - 尤其是因为如果以后将类似的静态方法添加到Mockito时,它可能会破裂。

添加import org.mockito.*;是不够的,因为这在org.mockito软件包中添加了所有类,但不是org.mockito.Mockito上的方法。

特别是对于日食,您可以通过将光标放在Mockito.whenwhen部分并按CONTROL-SHIFT-M("添加导入")来添加静态导入。您还可以将org.mockito.Mockito添加到您的收藏夹(窗口>首选项> Java>编辑器> content Assist>"收藏夹">"新类型"),以便在CTRL-Space内容辅助辅助提示提示中显示所有Mockito静态方法,即使您还没有具体导入它们。(您可能还想为org.mockito.matchers执行此操作,在org.mockito.mockito上可以通过继承获得,但由于这个原因可能不会出现在Eclipse中。)

kotlin语法 - 不要忘记````backticks''

import org.mockito.Mockito.`when`

`when`(someMock.someMethod()).thenReturn();

相关内容

  • 没有找到相关文章

最新更新