Mockito:模拟类<t>对象

时间:2015-08-11 13:29:22

标签: mockito powermock

道歉,如果已经讨论过但我没有找到任何解决方案。

问题 - 试图模拟某种类型的类的对象(例如类)

编写方法xyz()的测试用例,我需要模拟SomeClass.class,如下面的代码片段所述

<p>Choose one: 
    <select name="combo">
        <option value="" disabled="disabled" selected="selected"> </option>
        <option value="${tmplattribute}">${tmplattibute}</option>
    </select>
</p>
  1. 使用power mockito
  2. 尝试过(Class)Mockito.mock(Class.class),但无效。
  3. 我希望上面的代码可以解决问题。任何帮助非常感谢。

    非常感谢!

2 个答案:

答案 0 :(得分:3)

是的,找到解决方案:

使用PowerMockRunner运行测试用例,方法如下:

@RunWith(PowerMockRunner.class)
@PrepareForTest({ MyOtherClass.class, MainClass.class})

模拟静态方法并提供特定类型的类的预期对象:

PowerMockito.mockStatic(MyOtherClass.class);
PowerMockito.when(MyOtherClass.staticMethod((Class<SomeClass>) SomeClass.class)).thenReturn(...);

由于

答案 1 :(得分:0)

尝试Mockito.mock(Class<T>.class);