BDDMockitto常用方法小结

BDDMockit

一般都是通过以下几个步骤来实现单元测试:

  1. 基于假定条件来设置,比如given()设置某些方法的值
  2. 触发某些操作,比如调用方法
  3. 进行结果或者调用过程的验证, then /assert操作

基于上述的思路,下面通过一个示例来展示其用法。

示例

代码示例:

@Test
    public void testBDD() {
        String name = "jack";
        Integer age = 12;

        given(gameRepository.findByName(name)).willReturn(null);
        this.gameService.create(name, age);

        then(this.gameRepository).should().insert(name, age);
    }

其中,在gameService的create()方法中调用了gameRepository.insert(),这里用来验证这个insert方法是否被正确调用过了。

should()方法中还可以使用如下方式:

  • should(VerificationMode mode)
  • should(InOrder inOrder)
  • should()

在VerificationMode中,可以支持如下验证方式:

  • times(num): 调用次数
  • never() : 从未调用
  • atLeastOnce(): 至少一次
  • atLeast(num): 至少num次数
  • atMost(num): 至多num次数

使用的方式:
verify(mock, verificationMode).somemethod(“it is invoked once, etc”)
then(mock).should(VerificationMode).somethod(“xxxx”)

总结

参考资料

  1. https://www.baeldung.com/bdd-mockito
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值