当前位置: 首页 > 知识库问答 >
问题:

如何与Powermockito模拟最终类?

阎修明
2023-03-14

我有最后一节课。

@Mock
Response<Void> response;

@Test
public void removeStoreSuccess(){
    when(app.getApiService()).thenReturn(service);
    when(service.removeFavoriteStore(anyObject())).thenReturn(Observable.just(response));

    presenter.removeStore(favoriteStore);
}

org.mockito.exceptions.base.MockitoExc0019:不能模拟/间谍类改造2.响应Mockito不能模拟/监视以下内容:-最终类-匿名类-原始类型

如何使用Powermockito模拟响应类?

共有1个答案

欧镜
2023-03-14

尝试按照以下步骤解决此问题:

  1. 用最新的Mockito版本更新您的项目(现在是2.8。)
 类似资料:
  • 为了测试我编码的私有方法之一,我需要模拟一个单例。 用PowerMockito测试了几种方法后: 我在UtilDatabaseEnrichissement的absract父类中将配置文件定义为常量,并在构造函数中使用。 我怎么测试这部分呢?

  • 问题内容: IDK(是否重复),但我确定找不到相关项目。我一直期望这真的很简单,因为通过反射它非常简单,但是我宁愿使用正确的工具来完成它。 澄清:旧版代码。没有吸气剂/二传手。 为此使用Whitebox是否正确?我以为是“超限”,即内部API的一部分?…或者那是严格的Mockito吗? 问题答案: 请参阅。 例如-给定的类需要测试: 具有以下私有实例: 然后可以用来设置的私有状态,以便可以对其进行

  • 问题内容: 我正在尝试第一次使用PowerMockito模拟类构造函数,但是它不起作用。我当前的代码是: 测试失败,因为返回的值为“ Fail”。我的问题在哪里? 问题答案: Okey,找到答案了,您需要致电 代替

  • 问题内容: 我上了最后一堂课,像这样: 我在其他这样的班级中使用这个班级: 在我的JUnit测试类中,Seasons.java我想模拟RainOnTrees该类。我该如何使用Mockito做到这一点? 问题答案: 仅在Mockito v2中可以模拟最终/静态类/方法。 将此添加到你的gradle文件中: 使用Mockito常见问题解答中的 Mockito v1,这是不可能的: `What are

  • 问题内容: 我想模拟下一行: 这里的问题是newBigQueryClient方法返回的Bulder类是最终的。这意味着我既不能使用嘲讽也不可以使用powermockito来模拟它(它返回这样的异常:不能对最终类进行子类化),但是我需要返回适合于模拟它的构建方法的东西。有什么想法怎么做? 问题答案: 改善代码并使其更具可测试性的建议: 首先,您不会像您给我们的示例那样模拟 声明 。您可以模拟 对象