5、软件开发核心技术:测试驱动开发与调试部署全解析

软件开发核心技术:测试驱动开发与调试部署全解析

1. 测试驱动开发(TDD)

测试驱动开发(TDD)围绕一个非常短的反馈循环运行。其流程如下:
1. 编写一个非常简单的测试。
2. 编写足够的代码使测试通过。
3. 测试通过后,重构测试以包含基本需求。
4. 回到代码,再次使测试通过。
5. 重复上述过程,直到满足所有需求。

通过先编写测试,开发者会被迫考虑代码的工作方式,而非随意编写代码。如果测试仅包含一个基本需求,就不太可能去开发未来可能需要但实际多余的功能,从而避免浪费时间和资源。

使用测试驱动开发来开发模块有很多好处,其中最大的好处是能获得一套完整的(单元)测试。在未来的任何时候,你都可以回来重新处理、重构、实现新功能或以其他方式更改代码,因为你知道单元测试覆盖了代码继续工作所需的所有条件。不过,通常应避免同时更改测试和代码,因为这样可能无法确定哪个组件出了问题。

软件开发传奇人物肯特·贝克(Kent Beck)被认为是让测试驱动开发声名鹊起的人。他给出的测试驱动开发的顶级技巧如下:
- 除非有一个失败的自动化测试,否则永远不要写一行代码。
- 消除代码重复。

2. 调试

调试是指在软件中查找并移除错误的过程。修复一个 bug 可能会很有成就感,但也可能会令人沮丧,比如花一整天甚至更多时间去查找一个缺失的逗号。

要修复一个 bug,你需要了解它的特征,如它是如何产生的、如何工作的,以及需要采取哪些确切步骤来复现问题。有时,代码在某些情况下运行正常,但 bug 可能只在生产服务器上出现,或者需要通过一系列非常特殊的步骤或在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值