我是BDD的新手,我通过在线文章了解它。我想为我的新AngularJS应用程序做BDD。我仍然非常习惯使用旧方法,在项目开始时,考虑功能并逐步创建它。
那么,我怎样才能让自己感觉舒服在开发时想到BDD?我怎样才能确保我编写的BDD测试能够很好地覆盖我的所有代码?
答案 0 :(得分:1)
有different flavors of BDD。在我看来,BDD的优势在于协同定义需求。因此,我更喜欢名称通过示例规范(SbE)而不是行为驱动开发(BDD),因为它表明此技术可用于提出正确的问题和与不同的利益相关者一起制定细节。当您想要从SbE开始时,如果您更改视点并从客户和用户视图查看问题/项目,则会有所帮助。在定义了快乐路径后,您可以更深入地了解您的团队并定义边缘案例。
请注意,SbE不是银弹。我建议使用“常规”单元测试作为测试覆盖率的基础,并使用SbE作为附件来根据客户要求推动开发。从技术角度来看,您应该注意write specifications, not scripts。
答案 1 :(得分:0)
与大多数事情一样,这取决于。我为BDD所做的是考虑用户将要进行的交互并绘制关键流程和功能。对于前端应用程序,我想到用户将如何与应用程序交互(单击导航菜单,注册帐户等),然后根据这些行为编写测试。 BDD不是任何特定实现的范例,我看到它在不同项目中的表现不同。但是,它归结为考虑应用程序在给定特定状态时所展示的行为,并对其进行测试以最大限度地减少回归或破坏更改。
答案 2 :(得分:0)
想想
你在做什么
和
你为什么这样做(例如它有什么价值)
在你考虑如何做某事之前,先明白这些。这是BDD的关键,在你可以驱动任何你必须了解行为并能够清楚地表达它之前。