将 TDD 从业务级别分解到单元级别的有效技术是什么?

What are effective techniques to break down TDD from a business level to the unit level?

我对 TDD 的了解程度很低,但在实际将这些技术应用于大型复杂项目时,我看到的信息很少。将它应用到单个 function/class 很容易,但是当我不得不考虑数百个组件相互交互时,我有点迷茫。

目前我正在编写用户故事,然后构建功能和场景,但这是我目前为止所获得的。

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

是的,使用 BDD 作为 TDD 的 "outer loop" 很聪明。

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

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