zoukankan      html  css  js  c++  java
  • 何时启用单元测试

    关于丑陋代码

    工作中经常看到很多丑陋的代码,或者,自己写的代码过一段时间之后自己也觉得很丑陋,促使你不断的去重构。

    那么,这些丑陋的代码是什么时候编写的呢?它们到底存在多久了呢?

    大多数情况下,这些丑陋代码已经存在有些年头了。即使是你一手支撑的产品或项目,经过几个版本的迭代之后,1-2年也过去了。

    在这些看起来丑陋的代码中,很多没有进行单元测试,可测试性不高,或者根本不可测。或者它们也有可能是 TDD 实践后的产物,有着不错的单元测试覆盖,但依旧是丑陋的代码。

    但经过漫长的生命周期后,它们存活了下来,并且至今仍发挥着效力。因为,这些丑陋代码所实现的业务逻辑是有效和有用的,而业务逻辑所描述的产品还仍然很有生命力。

    所以,丑陋代码有其存活的理由。只是,这些丑陋的代码增加了维护的难度,你需要不断的偿还这些技术债务,甚至一直拖欠着。

    何时单元测试

    在新的项目中,我通常不会直接编写单元测试代码,直到:

    • 当我知道如何构建我正在尝试构建的系统时
    • 当我知道我们的客户是真正的需要我们所要构建的系统时
    • 当我知道我所写的代码将存活一个月以上时

    直到此时,我才能明确的表达所构建系统的原型,并且通常其已经不再是一个将被抛弃的原型。

    难道这就意味着我有权说我可以不写单元测试吗?是的。

    因为在此之前,我们一直在不断的等待各方反馈,以确认我们正在做着正确的事情。而一旦我们已确认所做的事情是正确的,那么就可以启动自动化测试了。

    单元测试的作用

    1. 帮助理解需求
    2. 对设计的快速反馈
    3. 提高实现质量
    4. 测试成本低
    5. 利于重构
    6. 文档作用
  • 相关阅读:
    Linux学习笔记(6)磁盘分区(LVM)
    Linux学习笔记(5)磁盘分区(parted)
    sql server升级打补丁
    sql server中index的REBUILD和REORGANIZE的区别及工作方式
    【sql server邮件】sql server如何把查询结果发邮件出去
    学习系列
    EasySQLMAIL使用实践系列
    利用EasySQLMAIL实现自动填写Excel表格并发送邮件(2)
    需求分析Point
    实现Word的列表样式
  • 原文地址:https://www.cnblogs.com/gaochundong/p/when_we_need_write_unit_tests.html
Copyright © 2011-2022 走看看