基于Junit5+PowerMock的单元测试框架
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于Junit5+PowerMock的单元测试框架相关的知识,希望对你有一定的参考价值。
参考技术A 前置基于上面的场景,本文描述基于Junit+PowerMock+Mockito进行单元测试的方案中可能存在的小部分问题,PowerMock作为弥补Mockito无法mock类中静态、私有、final变量、方法及构造函数等不足的一扩展工具,在使用时还是可能会存在比较多坑:
PowerMock与Mockito的版本需要对应起来(具体见官网),否则可能出现:org.mockito.internal.handler.MockHandlerFactory.createMockHandler错误
缺点
junit本身不支持并行测试;工程中主要就Junit的如下4种场景的并行测试的实现进行描述:
单测试类的所有方法并行测试:
单测试类的单个方法并行测试:
多测试类的所有方法并行测试:
所有测试类一次执行
框架描述
主要是针对Junit框架、PowerMock框架以及部分其他三方工具进行整合创建的工具工程;囊括 通用基本数据类型check、shell命令执行、性能监控、测试结果统计、报告生成、邮件通知 等功能
工程目录结构如下:
备注:由于TestNG框架原生就支持并行、负载测试,所以在并发场景直接使用TestNG+Jmeter的框架
Junit5对应的pom依赖
针对支持并行测试的场景、监听终端日志捕获异常场景,需要添加如下pom:
其中net.sourceforge.groboutils下的groboutils-core-5.jar需要手动添加到Global Libraries目录下
Junit5相关注解说明,官网实例,参见 链接
以上是关于基于Junit5+PowerMock的单元测试框架的主要内容,如果未能解决你的问题,请参考以下文章
Android 单元测试实战—— 基于Powermock的常用方法指南