[阅读笔记]Modern C++ Programming with Test-Driven Develpment chp3

来源:互联网 发布:网络大电影如何运作 编辑:程序博客网 时间:2024/05/22 16:59

3.2 Unit Test and TDD Fundamentals

  1. TDD 主要体现在单元测试中
  2. 基本流程:
    1. 初始化
    2. 触发或者调用需要测试的行为
    3. 验证所测试行为的结果
    4. 扫尾
  3. 测试代码, 应该保持短小,精悍

3.3 The TDD Cycle:Red-Green-Refactor

  1. 基本流程:
    1. 先写测试代码
    2. 确保新的测试无法通过
    3. 修改原始代码使得测试代码通过
  2. 使用 TDD 方式,代码的覆盖率比较高, 出错的几率相对较小
    这里写图片描述

3.6 Mind-sets for Successful Adoption of TDD

  1. incrementalism 每次写一点, 慢慢靠近最终的目标
  2. Test Behavior, Not Methods 测试目标的行为, 而不是单独的函数
  3. Keeping It simple
  4. Stick to the Cycle

3.7 Mechanics for success

  1. 计划下一个测试做啥
    1. 哪个操作逻辑上最有意义
    2. 哪个行为需要的代码量最少
    3. 是否可以编写一个测试表明现有的代码不完善
  2. 10分钟限制, 超过10分钟, 说明编写太复杂了, 可以考虑重写
  3. 缺陷是不可避免的, 但是使用TDD 可以大幅度的减少缺陷
  4. 使用 DISALBLE_ 前缀使某些测试无效, 便于测试修改
0 0
原创粉丝点击