14-15-16 JUnit内幕 重构SerialDate

本文探讨了如何通过逐步改进,提升代码清晰度,重点讲解了Junit测试中的代码覆盖率策略,以及在重构SerialDate类时遇到的挑战,包括拆分函数、避免时序耦合和重构原则。

14 逐步改进

我已经无力吐槽这近乎 60 页的废话是怎么编写完成的。。。

15 Junit 内幕

代码覆盖分析 —— 目标 100%

IDEA代码覆盖率测试

经验

  • 封装条件判断 从而更清晰地表达代码的意图 拆解出一个方法 解释这个条件判断
  • 区分对象中属性与参数中传入的同名变量 应做区分 而不是仅仅用 this 防止语法错误
  • 否定式比肯定式难理解 采用肯定式 if 语句 调转条件判断
  • 拆分一个函数到只做一个功能
  • 索引名 xxxIndex
  • 注意时序性耦合(是否有顺序依赖)=> 暴露时序性耦合 作为参数强制传入 => 将有顺序依赖的函数以组合的方式放入该函数内部(以保证执行顺序)

Junit 代码的案例是一次经典的代码重构和整洁化过程!只不过原文作者从5个函数拆出了15个函数 我认为拆的有点过了 拆成10个左右差不多了 一个函数只有一行两行的那种代码拆的有点过分了

重构常会导致另一次推翻此次重构的重构 重构是一种不停试错的迭代过程

16 重构 SerialDate

这章也没什么好说的 阅读难度不小 作者一通操作猛如虎 看得我云里雾里的 看不进去怪我喽 很多时间找源码就费半天劲 就看了看理论部分综述得了

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帅气呢杰哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值