mockito、powermock、testng使用
引入pom:
<dependency><groupId>org.powermock</groupId><artifactId>powermock-module-testng</artifactId><version>2.0.2</version><scope>test</scope></dependency><dependency><groupId>org.powermock</groupId><artifactId>powermock-api-mockito2</artifactId><version>2.0.2</version><scope>test</scope></dependency>
使用方法
mokito使用不再介绍,powermock可以mock静态方法:
@PrepareForTest(ZipUtil.class)
public class ExecutorTest extends PowerMockTestCase {@InjectMocksprivate Executor executor;@Mockprivate FTPService ftpService;@BeforeMethodpublic void setUp() {MockitoAnnotations.initMocks(this);}@Testpublic void testExecute() {PowerMockito.mockStatic(ZipUtil.class);PowerMockito.mockStatic(FileUtils.class);PowerMockito.when(FileUtils.listFiles(any(), any(), anyBoolean())).thenReturn(Lists.newArrayList());executor.execute(instructionDTO);}
}
遇到问题:
java.lang.NoSuchMethodError: org.mockito.Mockito.framework()Lorg/mockito/Moc
问题原因:
参考这篇文章发现是mockito和powermock版本不一致:
异常 Exception in thread "main" java.lang.NoSuchMethodError: org.mockito.Mockito.framework()Lorg/mo... - 简书
解决方法:
安装maven dependency helper插件和maven helper插件,用于分析依赖
在pom中,点击下方的dependency analyzer,输入mock,查找mockito版本,我之前查找到时1.10.19
右键点击排除,之后手动添加mockito版本:
<dependency><groupId>org.powermock</groupId><artifactId>powermock-module-testng</artifactId><scope>test</scope></dependency> <dependency><groupId>org.powermock</groupId><artifactId>powermock-api-mockito2</artifactId><scope>test</scope><exclusions><exclusion><artifactId>mockito-core</artifactId><groupId>org.mockito</groupId></exclusion></exclusions></dependency><dependency><groupId>org.mockito</groupId><artifactId>mockito-core</artifactId><version>2.23.4</version></dependency>
mockito、powermock、testng使用相关推荐
- 玩转Spring JUnit+mockito+powermock单元测试(使用详解)
说明:请耐心看完... Spring中执行单元测试,最麻烦的就是解决Bean的定义以及注入的问题.最开始使用Spring的上下文初始化进行测试,开头是这样的: @RunWith(SpringJUnit ...
- Mockito,PowerMock结合Unit 示例
文章目录 Unit test 示例 1. 工具类测试用例 2. 依赖`spring`容器注入的bean 3. 依赖Spring容器bean同时依赖静态类 4. Mock各种实际情况 1)忽略静态变量初 ...
- mockito 静态方法_Mockito模拟静态方法– PowerMock
mockito 静态方法 Mockito allows us to create mock objects. Since static method belongs to the class, the ...
- android mockito,mockito
PowerMock相关2021-05-27 19:32:24 Mock外部服务调用 PowerMockito.when([外部类].[调用的方法](Mockito.anyInt(),Mockito.a ...
- 单元测试之带你搞懂Mockito使用
Mock介绍 在平时开发过程中,我们往往会遇到以下问题 1.由于依赖调用的接口没有开发完成,需要等待(客户端和服务端,服务端和其他服务之间) 2.自测时由于服务器故障等无法正常调用接口,或者一些边界条 ...
- 如何用TestNG满足开发自测?
写在前边 用单元测试Junit完全可以满足日常开发自测,为什么还要学习TestNG,都影响了我的开发进度! 最近技术部老大突然宣布:全体开发人员必须熟练掌握自动化测试框架TestNG,就有了上边同事们 ...
- Spock、Mockito、MINA
Spock 目录 介绍 入门 Spock入门 数据驱动测试 基于交互的测试 扩展名 模组 发行说明 迁移指南 Spock是针对Java和Groovy应用程序的测试和规范框架.使它在人群中脱颖而出的是其 ...
- android powermock,使用PowerMock写Android单元测试
[TOC] 为什么用PowerMock 在写Android单测的时候,大家多为这几件事苦恼: 与Android API进行的交互,如何隔绝? 如何对private method/field进行mock ...
- android powermock,Android 单元测试 PowerMock框架的使用总结
在安卓中我们常用Junit + Mockito + PowerMock 组合进行测试.PowerMock是拓展Mockito,主要是为了解决Mockito 框架不支持mock匿名类.final类.st ...
- Android单元测试系列(3)-Mock之PowerMock
目录 一.官网 二.Demo示例 三.PowerMock常用的测试方法 1. Private 1.1 私有变量 1.2 私有方法 2. Final 3. Static Android单元测试系列(3) ...
最新文章
- PTA基础编程题目集-6-12 判断奇偶性
- golang 字符串比较 不区分大小写
- freeswitch呼叫流程分析
- nginx 中location中root和alias的区别
- Mysql的drop/truncate/delete
- python计算执行时间的函数_[python] 统计函数运行时间
- UVA - 1267 Network
- Mac 电脑锁屏快捷方法
- Meta-learning algorithms for Few-Shot Computer Vision论文解读(三)
- 线性电路中DAC和ADC的校准
- [QUANTAXIS量化分析]羊驼策略1
- 在eclipse上使用Maven创建动态web项目
- Jupyter使用技巧+快捷键【速查手册】
- 从简单的信道估计说起
- 2021亚太杯A|B|C题全网最全解题思路+数据分享
- mysql主从复制、读写分离集群/etc/my.cnf配置文件
- Ant Design of Vue - 让 Message 组件支持手动点击关闭
- 业财一体化管理,简化财务复核流程,提高工作效率
- 局域网可以访问,但打印机就是连不上,提示拒绝访问,原来是这个原因
- java左转两位_Java面试编程题-火星车、火星漫游车