Powermockito 可以在非最终具体类中模拟最终方法吗? [英] Can Powermockito mock final method in non-final concrete class?

查看:38
本文介绍了Powermockito 可以在非最终具体类中模拟最终方法吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我有一个非 final 的具体类,它有一个像下面这样的 final 方法.

Let's say I have a non-final concrete class with a final method like the one below.

public class ABC {
  public final String myMethod(){
      return "test test";
  }
}

junit 中使用 Powermockito 调用时,是否可以模拟 myMethod() 以返回其他内容?谢谢

is it possible to mock myMethod() to return something else when it is called in junit using Powermockito? Thank you

推荐答案

这有效:

@RunWith(PowerMockRunner.class)
@PrepareForTest(ABC.class)
public class ABCTest {

    @Test
    public void finalCouldBeMock() {
        final ABC abc = PowerMockito.mock(ABC.class);
        PowerMockito.when(abc.myMethod()).thenReturn("toto");
        assertEquals("toto", abc.myMethod());
    }
}

这篇关于Powermockito 可以在非最终具体类中模拟最终方法吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆