aspectj 获取方法入参_Spock单元测试框架实战指南五 - void方法测试

本篇讲解如何针对void方法,即无返回结果的方法测试

void方法

void方法的测试不能像前面几篇介绍的那样在then标签里验证返回结果,因为void方法没有返回值

一般来说无返回值的方法,内部逻辑会修改入参的属性值,比如参数是个对象,那代码里可能会修改它的属性值,虽然没有返回,但还是可以通过校验入参的属性来测试void方法

还有一种更有效的测试方式,就是验证方法内部逻辑和流程是否符合预期,比如:

  • 应该走到哪个分支逻辑?
  • 是否执行了这一行代码?
  • for循环中的代码执行了几次?
  • 变量在方法内部的变化情况?

先看一个void方法的业务代码示例:

/** * 根据汇率计算金额 * @param userVO */public void setOrderAmountByExchange(UserVO userVO){    if(null == userVO.getUserOrders() || userVO.getUserOrders().size() <= 0){        return ;    }    for(OrderVO orderVO : userVO.getUserOrders()){        BigDecimal amount = orderVO.getAmount();        // 获取汇率(调用汇率接口)        BigDecimal exchange = moneyDAO.getExchangeByCountry(userVO.getCountry());        amount = amount.multip
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值