有什么有效的技术可以将TDD从业务级别分解为单位级别?

时间:2018-09-19 14:58:47

标签: tdd bdd

我完全了解了TDD,但是在将这些技术应用于大型复杂项目时,我几乎看不到任何信息。将它应用于单个函数/类很容易,但是当我不得不考虑数百个相互交互的组件时,我有点迷路。

目前,我正在编写用户案例,然后构建功能和场景,但这只是我所了解的。

  • 我怎么知道我是否在写良好的用户故事(不是太宽泛,不是无关紧要)?
  • 在TDD之上使用BDD是一种好习惯吗?
  • 如果是这样,我是否仍然按照TDD流程编写场景(在我的案例中本质上是一个集成测试),然后让它失败,直到每个单元测试都通过了它?
  • 如果不是有效的技术,可以将测试从业务级别分解为单位级别?

1 个答案:

答案 0 :(得分:1)

对于用户故事,您可能想阅读Gojko Adzik的书,特别是Fifty Quick Ideas To Improve User Stories

是的,将BDD用作TDD的“外循环”是很聪明的。

一种实现方法是您概述的方法。您可能需要阅读Growing Object-Oriented Software Guided by Tests,它为您提供了从高级端到端测试到粒度单元测试的详细过程。

另一种学习方法是看the first video from Sandro Mancuso and Uncle Bob in the series,他们在这里比较TDD的所谓伦敦和底特律学校。