Blog on Dan North & Associates Limited 10月02日
行为驱动开发的核心思想与实践
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

行为驱动开发(BDD)是一种敏捷方法论,强调通过自动化场景来表达用户故事的验收标准。它起源于自然语言处理领域,旨在解决测试驱动开发中“测试”一词的滥用问题。BDD的核心是识别行为,将验收标准转化为自动化场景,需要分析师、测试人员和程序员的紧密合作。BDD将测试人员的角色推向团队中心,强调他们对高质量软件交付的重要性。

🔍 BDD的核心是识别行为,通过自动化场景来表达用户故事的验收标准,旨在解决测试驱动开发中‘测试’一词的滥用问题,强调行为的自动化验证。

🤝 BDD需要分析师、测试人员和程序员的紧密合作,分析师负责捕获故事和验收标准,测试人员和程序员负责自动化场景,形成跨职能团队的协作模式。

🏆 BDD将测试人员的角色推向团队中心,强调他们对高质量软件交付的重要性,测试人员成为连接业务需求和技术实现的桥梁,推动软件开发的价值实现。

📚 BDD的实践者如Dave Astels,通过其Ruby BDD框架rspec等工具,推动了BDD在多个领域的应用,如Canada on Rails、JAOO和SD Best Practices等,展示了BDD的广泛影响力。

🚀 BDD不仅是技术方法,更是一种业务敏捷实践,如Goalwards®的业务敏捷实践,展示了BDD在实际项目中的应用价值,帮助团队更高效地交付高质量软件。

There’s more to BDD than evolving TDD

Behaviour-driven development started life as an NLP exercise to stem the abuse of the word “test” in “test-driven development”. Since then it has grown into a respectable and proven agile methodology (with a small “m” of course).

Dave Astels, the award-winning author, was an early adopter of BDD and has been instrumental in raising its profile. He presented it at Canada on Rails and is taking it to JAOO and SD Best Practices. He has even presented it to Google. His Ruby BDD framework, rspec, has inspired a number of similar projects.

Now, Dave is a programmer. What’s more, he is a very thoughtful programmer, which means he invests a lot of energy in making programming productive and effective—and more importantly fun—for himself and other programmers. He doesn’t get very excited about capturing requirements or the dynamic between testers and analysts, so you won’t hear him talking about the wider context of BDD, but you will hear him saying that there is one!

BDD is fundamentally about identifying behaviour. At the analysis level, the behaviour of a story is its acceptance criteria, which BDD expresses in the form of automated scenarios. You need analysts working with testers to capture the stories and identify the acceptance criteria, and then you need programmers working with testers to automate the scenarios.

So the ironic twist is that all that talk about “testing” in TDD was taking the focus off the real testing action! My efforts to put the word “test” back in its box have in fact propelled the testers into the central role on a BDD team.

So the message here is twofold. Firstly, although a lot of the existing BDD message is in the TDD space, don’t lose sight of the bigger picture or you’ll miss out on all the good stuff. And secondly don’t underestimate the value of the testers on your team: they are your direct line to delivering high value software.

Check out

Goalwards®

, our new business agility practice!

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

行为驱动开发 敏捷开发 测试驱动开发 验收标准 自动化场景
相关文章