行为驱动开发(BDD)入门与实践
1. 测试驱动开发(TDD)的起源
测试驱动开发(TDD)是一种开发者实践,其核心是先编写测试代码,再编写被测试的代码。具体步骤如下:
1. 为尚未存在的代码编写一个非常小的测试。
2. 运行测试,自然会失败。
3. 编写刚好足够的代码使测试通过,不多写。
4. 测试通过后,观察设计结果,重构发现的任何重复代码。
在许多单元测试系统中,测试失败时结果以红色显示,通过时以绿色显示,因此这个过程常被称为“红/绿/重构”循环。随着代码库规模的增加,重构步骤会消耗更多注意力,设计会不断演变和接受审查,这就是TDD带来的显著副产品——细粒度的涌现式设计。
值得注意的是,并非所有项目团队都有独立的测试人员角色。在没有独立测试人员的团队中,将测试实践与TDD分开仍然很有帮助。当开发者处于“TDD模式”时,应专注于红/绿/重构、设计和文档,而不考虑测试;开发出一定代码后,切换到“测试模式”,思考可能出现的问题,添加各种极端情况的测试用例。
以下是TDD流程的mermaid流程图:
graph LR
A[编写测试] --> B[运行测试,失败]
B --> C[编写代码使测试通过]
C --> D[重构代码]
D --> E{是否有新功能}
E -- 是 --> A
E -- 否 --> F[结束]
2. 行为驱动开发(BDD)的兴起
行为驱动开发(BDD)源于对TDD过程的更好
超级会员免费看
订阅专栏 解锁全文
1164

被折叠的 条评论
为什么被折叠?



