如何模拟要使用JUnit + Mockito进行单元测试的服务中使用的类

布莱恩·P

我想为使用/依赖于另一个类的服务编写单元测试。我想做的是模拟依赖的行为(与该类的实例相对)。被测试的服务方法在内部使用了依赖类(即,没有将依赖类的实例传递给方法调用),例如,我有一个要测试的服务方法:

import DependentClass;

public class Service {

    public void method() {
        DependentClass object = new DependentClass();
        object.someMethod();
    }
}

在我对Service method()的单元测试中,我想在DependentClass实例上模拟someMethod(),而不是让它使用真实的实例。我该如何在单元测试中进行设置?

我看过的所有示例和教程都显示了模拟对象实例,这些实例实例已传递到要测试的方法中,但是我还没有看到任何东西显示出如何模拟而不是对象实例

Mockito是否有可能(肯定是)?

沙漠

使用Powermockito框架和whenNew(...)方法很容易测试示例如下:

   @Test
   public void testMethod() throws Exception {
      DependentClass dependentClass = PowerMockito.mock(DependentClass.class);
      PowerMockito.whenNew(DependentClass.class).withNoArguments().thenReturn(dependentClass);

      Service service = new Service();
      service.method();
   }

希望能帮助到你

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Mockito对构造函数进行单元测试

使用Mockito的Spring服务单元测试

在使用Mockito进行单元测试时,如何处理ThirdParty类的静态方法调用?

如何在单元测试中使用Mockito或任何Mocking框架模拟Guice Injection?

单元测试如何使用Mockito模拟存储库

使用StaticLoggerBinder对类进行单元测试

Android-如何使用Mockito对测井类进行单元测试

如何/应该使用Mockito对EventBus事件进行单元测试?

使用DI进行单元测试和服务模拟

如何使用Moq对在.NET中使用asmx服务的应用程序进行单元测试

使用Mockito进行Runnable的单元测试

对使用AngularFireAuth和模拟authState的服务进行单元测试

如何对使用IoC容器类的类进行单元测试

在Python中使用模拟进行单元测试

使用Mockito和Firebase进行单元测试

如何使用Mockito模拟静态方法以进行单元测试

如何对使用Console类的类进行单元测试?

使用Mockito进行单元测试LazyLogging

使用单元测试模拟服务类

使用Mockito对POJO进行单元测试

如何使用Mockito对图节点进行单元测试?

对使用$ resource的服务进行单元测试

使用Gradle在Android中使用JUnit进行单元测试

使用Mockito库进行Scala单元测试

如何在Python中使用Mockito编写单元测试

单元测试:我的ViewModel中使用的模拟静态类

在 Mockito 的单元测试中使用带有 @Required 字段的类

使用 Mockito 对基于 Guice 的类进行单元测试

使用 Mockito 对 Realm 包装的 LiveData 进行单元测试