PowerMock测试活动onCreate

时间:2016-03-12 20:39:19

标签: android testing mockito powermock

我正在尝试测试Android活动的onCreate方法。 该活动名为LoginActivity,并且继承自AppCompatActivity。 该方法调用super.onCreate()的{​​{1}}方法,在调用AppCompatActivity时,它会在内部失败。它不会嘲笑错误。

所以我尝试通过执行以下操作来抑制getWindow的方法:

AppCompatActivity

但它似乎不起作用。我打电话的时候:

Method[] appCompatActivityOnCreateMethods =
        PowerMockito.methods(AppCompatActivity.class, "onCreate");

PowerMockito.suppress(appCompatActivityOnCreateMethods);

loginActivity = spy(new LoginActivity());

它仍然调用loginActivity.onCreate(mock(Bundle.class)); 方法。

我为super.onCreate和我的@PrepareForTest()

做了AppCompatActivity

我错过了什么?

1 个答案:

答案 0 :(得分:0)

假设你做了你写的,而没有写你没写的,你忘了使用PowerMockRunner。来自Getting Started Guide

@RunWith(PowerMockRunner.class)
@PrepareForTest( { YourClassWithEgStaticMethod.class })
public class YourTestCase {
    ...
}