Mockito
文章平均质量分 56
木子的木木
着眼于Java服务端高级技术,沉浸于开源代码,并对图像处理、NLP、CV较为有兴趣
展开
-
Mockito原理剖析—PowerMockito Mock静态方法原理、如何抑制静态初始化
文章目录PowerMockito如何进行静态类的Mock核心相关类流程MockGateway如何抑制静态初始化PowerMockito如何进行静态类的Mock核心相关类org.powermock.core.classloader.javassist.JavassistMockClassLoaderorg.powermock.core.transformers.javassist.InstrumentMockTransformer流程PowerMockito通过自定义ClassLoader,在加原创 2021-05-10 07:26:39 · 2422 阅读 · 1 评论 -
Mockito原理剖析—无默认构造函数Mock原理
依赖:objenesis、bytebuddy过程:对于Hotspot默认使用的是SunReflectionFactoryInstantiator,该方式会动态生成一个工厂类,通过该工厂类可以实现类似于默认构造函数的功能:1、生成一个实现MagicAccessorImpl类的ConstructorAccessor2、构造一个Constructor对象,设置ConstructorAccessor,当调用Constuctor#newInstance方法,创建对象的行为会委托至ConstructorAcce原创 2021-05-10 07:24:19 · 1087 阅读 · 0 评论 -
Mockito原理剖析——基本原理、@Spy、@Mock、插桩顺序
文章目录Mock的基本原理Mock和Spy区别调用方法的行为使用场景实例Stubbing插桩顺序的问题插桩先行插桩后行总结ReferenceMock的基本原理通过生成子类的方式,拦截具体的方法调用,将方法调用转发至Mock的桩代码,从而实现方法返回值或者方法执行体的自定义。Mock和Spy区别Mock和Spy的基本区别——在没有进行任何方法调用Mock的情况下,Mock根据全局配置根据方法调用返回值类型返回一个默认值,不会进行具体的方法调用;而Spy对象会默认调用真实的方法。调用方法的行为原创 2021-04-18 16:20:58 · 3529 阅读 · 0 评论