测试开发与TDD、BDD
2021-05-13 本文已影响0人
雷雨leiyu
开发测试一直都是项目开发过程中的一个重要环节,甚至在一些开发模式下能够起到主导作用。
关于敏捷开发
敏捷开发是一种新兴的软件开发方式,相对与传统开发方式它具有较高的团队协作要求,包括开发团队内部以及开发团队与业务专家之间,同时能够完成频繁的交付新的软件版本以及面对面沟通等。
TDD开发流程
TDD即Test Drive Development(测试驱动开发),开发人员从测试的角度来检验整个项目。
- 针对每个功能点抽象出接口代码;
- 编写单元测试代码;
- 实现接口代码;
- 运行单元测试代码;
- 循环以上流程直至完成项目;
并不是所有的项目都适合TDD,必须具有以下特点的项目才适合使用:
- 项目需求必须明确,这对前期的需求分析要求比较高;
- 业务模型相对简单,过于复杂的业务对TDD来说就是一个灾难;
- 内部模块关联度较低,如果模块间关联度较高TDD开发代价太大;
BDD开发
BDD即Behavior Drive Development(行为驱动开发),BDD一般作为TDD的一个补充或者分支,因为测试驱动开发很多情况下并不适合也不能被完整的接受。
BDD对TDD的改变:
- 将设计的测试抽象接口部分用行为来代替,从功能的行为来考虑而不是测试不存在的代码;