当前位置: 首页 > news >正文

网站建行接口互联网最赚钱的行业

网站建行接口,互联网最赚钱的行业,山东做化工b2b网站,免费注册微信网站文章目录 前言解决单元测试 mock final类报错1. 报错原因2. 解决方案3. 示例demo4. 扩展 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差&#xff0…

文章目录

  • 前言
    • 解决单元测试 mock final类报错
      • 1. 报错原因
      • 2. 解决方案
      • 3. 示例demo
      • 4. 扩展

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


解决单元测试 mock final类报错

1. 报错原因

如果mock final类的话会报下面的错误。
在这里插入图片描述
原因是 Mockito 默认不支持 final 类和 final 方法的 mock,因此无法直接使用传统的 Mockito 进行 mock 。

2. 解决方案

因为我的项目使用的springBoot 版本为2.3.4,因此我对应的mockito-core版本为3.12.4

<dependency><groupId>org.mockito</groupId><artifactId>mockito-core</artifactId><version>3.12.4</version><scope>test</scope>
</dependency>

因此对于该版本我只能使用 PowerMock 的方式来进行 mock final类。
对应的pom:

<dependency><groupId>org.powermock</groupId><artifactId>powermock-module-junit4</artifactId><version>2.0.9</version><scope>test</scope>
</dependency>
<dependency><groupId>org.powermock</groupId><artifactId>powermock-api-mockito2</artifactId><version>2.0.9</version><scope>test</scope>
</dependency>

3. 示例demo

测试类:

public class TestController {@Autowiredprivate TestOneService service;public void yyyy(HttpServletResponse response){HSSFWorkbook yyyy = service.yyyy();try {ServletOutputStream outputStream = response.getOutputStream();yyyy.write(outputStream);outputStream.close();} catch (Exception e) {e.printStackTrace();}}
}

单元测试类:


@RunWith(PowerMockRunner.class)
@PrepareForTest({HSSFWorkbook.class})
@PowerMockIgnore({"javax.net.ssl.*","javax.management.*"})
public class TestControllerTest {@InjectMocksTestController testController;@MockTestOneService service;@Testpublic void test() throws IOException {HttpServletResponse response = Mockito.mock(HttpServletResponse.class);ServletOutputStream outputStream =  Mockito.mock(ServletOutputStream.class);HSSFWorkbook hssfWorkbook = PowerMockito.mock(HSSFWorkbook.class);PowerMockito.when(service.yyyy()).thenReturn(hssfWorkbook);PowerMockito.when(response.getOutputStream()).thenReturn(outputStream);testController.yyyy(response);Assert.assertTrue(true);}}

这里的重点在于使用PowerMockito来进行mock:
HSSFWorkbook hssfWorkbook = PowerMockito.mock(HSSFWorkbook.class);
同时添加 HSSFWorkbook 以支持 mock
@PrepareForTest({HSSFWorkbook.class})
执行效果:

在这里插入图片描述

4. 扩展

如果你的 Spring Boot是 2.5 及以上版本中,可以使用 Mockito 4.x 版本,该版本 mocking 已经支持 final 类和 final 方法。

http://www.mmbaike.com/news/44741.html

相关文章:

  • 自己做网站能否赚钱百度刷seo关键词排名
  • 有专门教做儿童美食的网站吗搜索引擎优化简称
  • 开发一个网站做爬虫网络营销推广主要做什么?
  • 怎么建设自己网站(儿童)步骤百度公司招聘条件
  • 开发个网站需要多少钱360营销推广
  • dw做网站如何让用户可编辑优秀营销软文范例300字
  • 网站上怎么做企业推广优化大师电脑版官方
  • 中海建筑建设有限公司网站公众号seo排名软件
  • 织梦如何做淘宝客网站企业宣传方式有哪些
  • 网站推广工具 刷链接搜索词分析工具
  • 个人网站建设作用线上营销方案
  • 专门做网站推广的平台销售网络平台推广
  • 网站显示危险网站国家卫健委最新疫情报告
  • 郑州二七区做网站百度官方客服平台
  • 企业网站建设公司郑州昆山网站制作哪家好
  • 做外贸的网站哪个好做网站比较好的公司有哪些
  • 网站建设简历芭嘞seo
  • 潍坊市坊子区建设局网站推广普通话的意义简短
  • 济南软件优化网站建设建站平台哪家好
  • 短信验证码接码网站建设免费代理上网网站
  • 自己搭建服务器做视频网站东莞百度搜索网站排名
  • 网站内容建设的原则是什么样的如何做企业网站
  • 长沙市网站建设电视剧百度风云榜
  • 适合大学生做的兼职网站有哪些seo工具
  • 鹰潭市住房和城乡建设局网站百度大数据查询平台
  • 网站的动态是什么意思嘉兴seo外包
  • 微信开发者中心站长之家 seo查询
  • 做网站项目的心得如何增加网站的外链
  • 江苏网站建设费用网址关键词查询网站
  • 网站建设计划方案模板百度指数功能模块