单元测试 - Mockito - powermock - 异常测试

单元测试 - Mockito - powermock - 异常测试

特别说明

当前文章内容迁移中,如有问题,请提交 issues 谢谢~~

一. 引入 maven 坐标

       <dependency>
            <groupId>org.powermock</groupId>
            <artifactId>powermock-api-mockito</artifactId>
            <version>${powermock.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.powermock</groupId>
            <artifactId>powermock-core</artifactId>
            <version>${powermock.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.powermock</groupId>
            <artifactId>powermock-module-junit4</artifactId>
            <version>${powermock.version}</version>
            <scope>test</scope>
        </dependency>

具体的版本,可去 maven 中心仓库自行查找自己想要的

二. Mock 异常

1. mock 异常的发生

 Mockito.when(Mockito.anyObject())
        .thenThrow(new Exception());

或者使用

 Mockito.when(Mockito.anyObject())
        .thenThrow(Exception.class);

2. 对异常进行断言

1). 使用 @Test 注解

在测试类上加上注解,expected 中的异常为具体的 mock 异常。

@Test(expected = Exception.class)
2). 使用 try-catch
3). 使用 @Rule 结合 JUnitExpectedException
  • 声明全局变量,且为 public 类型
    @Rule
    public ExpectedException exception = ExpectedException.none();
  • 在调用方法前,使用断言
exception.expect(IOException.class);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值