深度解读 - TDD(测试驱动开发)(5)

发表于:2017-03-31来源:jianshu作者:SeabornLee点击数: 标签:tdd
符合 Given-When-Then 格式 速度快 包含断言 可以重复执行 不会写刚好的实现 很多人写实现的时候无法专注当前需求,一不小心就把其他需求也实现了,就破
  • 符合 Given-When-Then 格式
  • 速度快
  • 包含断言
  • 可以重复执行
  • 不会写刚好的实现
    很多人写实现的时候无法专注当前需求,一不小心就把其他需求也实现了,就破坏了节奏感。
    实现的时候不会小步快走。

    不会重构
    不懂什么是 Clean Code,看不出 Smell,没有及时重构,等想要重构时已经难以下手了。
    不知道用合适的「手法」消除 Smell。

    基础设施
    对于特定技术栈,没有把单元测试基础设施搭建好,导致写测试时无法专注在测试用例上。

    实例


    写一个程序来计算一个文本文件 words.txt 中每个单词出现的频率。
    为了保持简单,假设:

    • words.txt 只包含小写字母和空格
    • 每个单词只包含小写字母
    • 单词之间由一个或多个空格分开

    举个例子,假设 words.txt 包含以下内容:

    the day is sunny the the
    the sunny is is

    你的程序应当输出如下,按频率倒序排序:

    原文转自:http://www.jianshu.com/p/62f16cd4fef3