BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

行为驱动开发关注点从数据库转向领域模型

| 作者 Jan Stenberg 关注 29 他的粉丝 ,译者 廖煜嵘 关注 0 他的粉丝 发布于 2013年8月7日. 估计阅读时间: 2 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

Julie Lerman在MSDN杂志中建议,设计应用的时候应开始使用行为驱动开发(BDD),并着重关注在领域模型而不是数据库。

Julie Lerman,这位自2003年以来的一直都是微软MVP、同时担任顾问和.NET平台的导师说,BDD让开发者在构建逻辑和测试的时候关注用例和行为,并用作在和客户讨论问题时定义验收的标准。对于BDD的初学者,Julie使用Visual Studio、C#和SpecFlow实现了一个例子。

SpecFlow是一个在.NET平台上开源的工具,作为Cucumber 家族中的一员,它也支持其他平台的集成。他们使用 Gherkin,一种基于关键字的语言去描述一个用户故事场景,其中最重要的是Given,When和then。Julie给出了场景中的一个小例子:

Given(对于)指定的某个用户输入了用户的信息,

When(当)她完成输入了更多的信息

then(那么)这个用户的信息应该保存在系统中

SpecFlow整合了Visual Studio并能为指定场景生成和执行测试。从一个简单的用例故事开始,Julie使用这些工具创建了测试项目并且执行了需要为描述用户故事场景所创建和运行的测试的步骤。

Julies认为自己是一名数据极客,她十分关注和客户的协作和对其业务的理解。因此她相信领域驱动开发(DDD)和行为驱动开发是需要遵守的重要原则。

用户可以在SpecFlow的网站上找到更多的导学手册文档

BDD是在大约2006年由Dan North创立的,他还写了一篇介绍和关于从BDD角度去看用例故事的文章。

《实例化需求》一书介绍的是一种跟BDD关系密切的需求定义方法。

查看英文原文:Get Started With Behaviour-Driven Development Focusing on the Domain Instead of on the Database


感谢杨赛对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT