12 2012 档案
BDD vs TDD
摘要:在敏捷开发中我们常听到BDD,TDD,ATDD….等术语。这里我想谈谈我对TDD和BDD的看法,以及在项目中的应用。TDD is 测试驱动开发. TDD针对每个特定的功能写测试代码。当然一开始测试会失败(Red)的,因为我们的功能还不存在。然后写简单的代码使测试通过(Green)。接着重构代码(Refactor)。始终重复Red-Green-Refactor直到整个功能完成BDD is 行为驱动开发. BDD首先创建的是可执行的规范(Specification)。当然一开始规范会失败(Red)的,因为我们的功能还不存在。然后写简单的代码使规范通过(Green)。接着重构代码(Refactor) 阅读全文
posted @ 2012-12-31 21:37 Sandy8103 阅读(855) 评论(2) 推荐(1)
Automation Test in BDD 系列2 – Coffee Machine
摘要:上一篇中我们简单介绍了如果使用SpecFlow对Web GUI 进行测试。GUI Automation本质上是黑盒的自动化测试,测试脚本调用和交互的对象是Application Under Test(Web页面)。这一篇我们举另外一个例子用SpecFlow调用被测对象方法或接口,来实现验收自动化测试(Acceptance test automation),这是本质上是一种白盒测试。第一步:写Feature和Scenario第二步:运行Scenario,看到Scenario失败第三步:实现Step Definitions第四步:创建domain class—Coffee Machine第五步:实 阅读全文
posted @ 2012-12-31 13:47 Sandy8103 阅读(265) 评论(0) 推荐(0)
Automation Test in BDD 系列1 – Google Search
摘要:Behavior-driven development(行为驱动开发)这里我们简为BDD。这篇主要以Google搜索测试的例子来说明从零搭建出一个自动化测试的框架。本测试案例来源于WATIN官网的Hello World,我们来把这个测试转化于行为驱动开发模式下的测试。当然这个例子远远谈不上框架,只是一个入门的介绍。首先我们来看一下WATIN的测试:http://watin.org/[Test] public void SearchForWatiNOnGoogle(){using (var browser = new IE("http://www.google.com")){ 阅读全文
posted @ 2012-12-29 23:06 Sandy8103 阅读(1320) 评论(1) 推荐(1)
转载:使用 SpecFlow 和 WatiN 进行行为驱动开发
摘要:使用 SpecFlow 和 WatiN 进行行为驱动开发Brandon Satromhttp://msdn.microsoft.com/zh-cn/magazine/gg490346.aspx下载示例代码 随着自动化单元测试在软件开发中变得越来越普遍,对各种“测试优先”方法的采用也呈现出相同的趋势。 这些实践为开发团队既带来了难得的机遇,也带来了独特的挑战,但所有这些机遇和挑战都是为了帮助从业人员建立“根据设计进行测试”的思路。但是在“测试优先”时代的大多数时间,用于表达用户行为的方法一直贯穿于使用系统语言(一种与用户的语言不相关的语言)编写的单元测试。 随着行为驱动开发 (BDD) 技术的问 阅读全文
posted @ 2012-12-08 21:30 Sandy8103 阅读(387) 评论(1) 推荐(0)