我做 TDD,我在组织单元测试方面相当松散。我倾向于从代表下一个故事或功能块的文件开始,并编写所有单元测试以使其工作。
当然,如果我要引入一个新类,我通常会为该类制作一个单独的单元测试模块或文件,但我不会将测试本身组织成任何更高级别的结构。结果是我快速编写代码,并且我相信我的实际程序结构合理,但是单元测试本身是“混乱的”。特别是,它们的结构倾向于概括发展过程的系统发育。有时我认为自己是在用代码中的懒惰来换取测试中的懒惰。
这是一个多大的问题?谁在这里不断地重构和重组他们的单元测试以试图改进他们的整体结构?对此有什么建议吗?测试的整体结构应该是什么样子。
(请注意,我并不是在问“每个函数有多少断言”问题:我应该为每个函数/方法编写多少单元测试?我说的是更大的图景。)