我在最终A中有一个静态方法,该方法在B类中调用非静态方法
中的非静态方法我需要在B中使用A和非静态方法中的静态方法来添加单位测试。PowerMock是否有解决此类情况的解决方案?
您应该用户powermock在A中嘲笑静态方法,并嘲笑B中的静态方法。
- accountmanager上的模拟获取静态方法
- MOCK GetAccounts方法也在客户经理上
更清楚,对于静态模拟:
- 将@runwith(powermockrunner.class)添加到您的测试类
- 在您的测试类中添加@preparefortest(A.Class)
- 致电PowerMockito.mockstatic(AccountManager.Class);
- 使用何时(a.Method(a. nyy(param.class)))的存根行为。
对于非静态模拟:
- 添加模拟字段@mock B AccountManager;
- 在@be之前初始化模拟方法mockitoAnnotations.initmocks(this);
- (b.Method())。
可能您需要在A类上配置B对象。在此示例中,我正在以GET方法进行此操作。在您的情况下,可能是不同的,您必须弄清楚如何做。
问候。