powermockito的使用技巧

更新时间:2023-05-12 01:59:50 阅读: 评论:0

powermockito的使⽤技巧
当IT中有些依赖组件⽆法正常集成,需要mock⽀持测试,可以使⽤power mockito。
特别注意:
当对⼀个对象进⾏powermockito,应该在prepare⽅法,统⼀mock这个对象。然后在其他⽅法,分别进⾏调⽤when,否则,多个⽅法内进⾏mock,会出错。
⽐如有个 Service处于IT ca的底层,普通的mock根本mock不进去,但我们⼜不能为了集成测试,为这个testca单独开⼀个⼝⼦,注⼊mock对象。power mockito强⼤的mock能⼒在这⾥可以⽤上。
⽐如: 我的mock对象impalaService它在schmaMessagehandler类⾥new出来的,则需要加上注解。
⾸先在test 类的开头,加上注解头部,头部类是mock对象所在类。
(PowerMockRunner.class)
({HttpClient.class,SchemaMessageHandler.class})其次:PooledImpalaService impalaService =
PowerMockito.whenNew(PooledImpalaService.class).withArguments((ConfigurationanyObject()).thenReturn(impalaService); doNothing().when(impalaService).createTable(anyString(),(Schema) anyObject());使⽤powermockito,注意在⽤any()参数时候,⽐如 doNothing().when(impalaService).createTable(anyString(),(Schema) anyObject());参数列表中,只要⼀个使⽤了
any(),any****,则所有参数都要⽤any相关的参数,否则mock不成功。
总的来说,在it当中,只有你想mock⼀个对象,⼀定可以,⽐如你在A类中⽤到了B类,那么在prepareForTest中增加A类的注解。如下:({A.class})然后,在it中 声明⼀个B类,B b = k(B.class);这时候,就可以指定b的⽅法的返回值,或
PowerMockit.doNothing().when(b).⽅法名(),让该⽅法什么也不做。最后,再讲A实例化。PowerMockit是讲究mock设置顺序的。⼀定要注意。

本文发布于:2023-05-12 01:59:50,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/593270.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:注解   参数   需要   集成   加上   头部   测试
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图