我是BDD的全新手,我想了解它在开发周期中的作用.在TDD方法中,我们通常会为库或apis编写单元测试,我们会模拟对象,这很好,因为它甚至可以驱动我们的设计.这些测试将在实际代码之前编
我知道BDD更多的是关于规范/场景测试,我可以看到它非常适合根据实际代码测试业务需求.但是编写这些测试的最佳实践是什么?我们是否仍然继续编写单独的测试(如在TDD中)模拟出依赖关系并为可能出错的每一件事编写单元测试?然后写我们的bdd测试?我们首先编写bdd测试吗?我们是否只针对单个组件编写bdd测试?
我使用.NET并且通常编写asp.net mvc应用程序,但这更像是一个理论问题而且独立于底层编程语言.
非常感谢.
不知道正确的方法,但这是我的经验.在分析了规范文档之后,我尝试提取尽可能多的不同“故事”并使用BDD故事文件来描述它们.正如您已经知道的那样,每个句子应该从给出的三个关键字中的任何一个开始,然后是.在将整个规范翻译成BDD测试故事之后,我编写了一个实现步骤的类,即执行故事中使用的每个句子.
下一步是开始编写一个实现,该实现将通过设置初始状态(给定),状态转换(何时)和检查应用程序的目标状态(然后)来执行脚本句子的方法来调用.
每当我需要实现一个实际的类方法时,我都会使用TDD进行隔离的全面测试.
当然,为了运行测试,尚未实现的代码部分可能会被临时嘲笑.