stone91我现在逐渐觉得SDD可能不是最优答案,至少要打一些补丁。 中发帖

spec解决了“我想怎么样”的问题,用文档将事情描述清楚了。 
但是,有下面几个问题:

文档和软件行为一致性怎么保证?
代码风格等问题难以约束。
spec文档会逐渐腐化,自己都不愿意去看了。

我最近想了下,找到了一些解药,可以配合SDD来使用:

文档和软件一致性,通过写Gherkin用例配合+pytest-bdd模块来进行约束,甚至gherkin用例我们在开始设计spec的时候就能弄好,不用耦合太多代码细节。然后为了提升测试质量,我们可以引入mutmut库来对代码分支进行mutation,减少肤浅的松UT。
代码风格问题,将自己的代码风格约束转化为semgrep具体规则,维护在.semgrep中。比如过短且不可读的变量名,lambda表达式,臭名昭著的_ctx以及同步调用(懂得都懂)。

这样,我们的spec就有了确定性的保镖!
最后,spec腐化的问题,我也有个想法。
就让...