Jbehave 学习.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Jbehave 学习

Jbehave 学习JBehave行为驱动开发(BDD)是一个框架。 BDD是测试驱动开发(TDD)和验收测试驱动开发(ATDD)的一种演进,目的是使新手和专家开发实践起来更加方便和直观。它改变了从被测试为基础到以行为为基础的词汇,将自己定位为一个设计理念。一、BDD课题研究之测试思想和方法总结??此次研究的课题是BDD,主要涉及两个方面:测试的思想和方法、技术框架。这里做测试思想和方法的总结。BDD是什么??全称: Behaviour Driven Development(行为驱动开发)。??BDD改变了我们对软件测试的认识。先前我对测试的认识是:从大的角度来讲,软件测试就是对一个软件系统从功能上进行确认测试和验证测试,从性能上进行压力测试和负载测试,以及对系统的配置测试和兼容性测试等,从类别上又有单元测试,集成测试,回归测试,所有的这些测试工作都有一个目的:交付一套高质量的软 件系统。我们软件测试人员的工作就是:尽可能早的找出软件缺陷,并确保其得以修复。顺理成章的,在我们的思维中是:我们先拿到系统的既成品,然后开展测试工作,而BDD恰好颠覆了我们的思维。??回到BDD正题,BDD中有两个大的概念:测试先行和系统设计。??测试先行:BDD提倡我们在开发者的编码工作开展之前,先写测试用例,然后由测试来推动着开发的工作,具体解释为:在设计如何实现一个功能前,先考虑如何测试这个功能,测试的代码完成后,再编写功能实现代码,并且使得该测试用例通过,即完成了系统的一个功能模块。??系统设计:在系统功能实 现代码编写之前,我们需要先编写测试代码,在我们的测试代码中实现对系统行为的描述,这个描述其实就是用一种接近自然语言的方式对系统进行详细的设计,并 且使项目相关人员,即使是非技术人员也能很容易看懂。关于系统行为,举例说明:用户在一个特定的条件下对系统做请求,系统在该条件下做什么样的处理,这就 是系统的一个行为。??总结一下BDD的概念: 在项目之初,由客户、开发人员、测试人员一起通过充分的沟通对系统的行为进行设计,由测试人员以接近自然语言的方式编写可以描述系统行为的测试用例,然后 由开发人员编写相关的实现代码,并确保该测试用例通过。循环这个过程实现整个系统的功能。BDD的测试思想??先前在写日报的过程中,以关键字的形式来描述,这里用同样的方式来表达。??关键字:TDD,代码即文档,系统设计,合作。1.TDD??全称:Test Driven Development(测试驱动开发)。??BDD是基于TDD发展 起来的,BDD中测试先行的理念也是来自于TDD,测试驱动开发,由测试来推动着开发的工作,在具体的项目实施中,测试的工作先行,在功能代码编写前,先编写测试代码,再编写功能实现代码,并且使得该测试用例测试通过,循环这个过程,来实现系统的其他功能。在一个项目的开发过程中,针对于每一个阶段,都可用TDD的思想来开展工作。??BDD对TDD理念进行了扩展。TDD要求用测试来驱动开发,其重点偏向开发,测试用例是在约束开发者,使开发者的目标明确,设计出满足需求的系统。BDD要求在设计测试用例时对系统进行定义,倡导我们在测试用例中用通用语言把系统的行为描述出来,把测试代码作为系统的定义文档,将系统的设计和测试用例结合起来,进而驱动开发工 作。2.代码即文档??很多软件项目的失败源于项目团队人员对文档理解的差错。文档用来约束一个项目团队成员,使得大家的目标保持一致, 总之:文档很重要。??我们用需求文档管理需求,但是这些文档本身都因为容易变更,加上团队人员主观上的理有误,最终做出不能满足产品需求的产品。??BDD的思想是:将我们 的产品设计写在我们的测试用例中。把传统的产品说明书的内容写在测试用例中,在测试用例中描述软件系统的具体行为,体现着系统的设计,而且这是一份“活” 的的文档,因为这是可以运行的测试用例,我们由这些测试用例来驱动开发者的编码工作,开发者必须使这个测试用例通过,才算满足最基本工作。假如用例不通 过,显然我们的系统就存在缺陷,没有满足用户的需求。这样,就算是开发人员对文档理解有误,也会满足系统的需求。3.系统设计??在测试用例中描述系统的行为,体现出系统的每一步操作所带动相关事件的触发,进而得到相关的结果,这是对一个产品详细的定义,也就要求我们在测试用例中对系统的行为做出详细的设计。4.合作??客户,需求分析人员,测 试人员,和开发人员之间的合作,这个合作时间较集中在项目的开始阶段,大家一起对系统的行为进行定义,测试发展起步较晚,到现在开发人员还是有很多不重视 测试,再加上测试人员的工作是找出他们代码中存在的bug,所以开发人员和测试人员需要很多的相互沟通理解,处理好关系,这样的合作,无疑提供给我们交流 很大的一个空间。BDD的测试方法

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档