BDD课题研究之测试思想和方法总结(二)

本文介绍了行为驱动开发(BDD)的测试思想与方法,重点阐述了如何通过故事和场景来描述系统行为,以及如何利用通用语言促进不同角色间的沟通与合作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

BDD课题研究之测试思想和方法总结

字体:        | 上一篇 下一篇 | 打印  | 我要投稿 

  ◆ 系统设计

  在测试用例中描述系统的行为,体现出系统的每一步操作所带动相关事件的触发,进而得到相关的结果,这是对一个产品详细的定义,也就要求我们在测试用例中对系统的行为做出详细的设计。

  ◆ 合作

  客户,需求分析人员,测试人员,和开发人员之间的合作,这个合作时间较集中在项目的开始阶段,大家一起对系统的行为进行定义,测试发展起步较晚,到现在开发人员还是有很多不重视测试,再加上测试人员的工作是找出他们代码中存在的bug,所以开发人员和测试人员需要很多的相互沟通理解,处理好关系,这样的合作,无疑提供给我们交流很大的一个空间。

  BDD的测试方法

  关键字:故事&场景,通用语言。

  ◆ 故事&场景

  一个故事描述了系统的一个行为,对应着用户的一个需求。举例说明:外部开发者开发好的应用经过小二的审核后发布在淘宝开发平台的服务平台上面,供用户订购使用。现在有一个用户要访问一个应用,此时就发生了一个故事,用户访问应用要经过top-container应用容器的校验,这个故事中描述了top-Container做校验的行为。

  在一个故事中又会有多个不同的场景。用户访问应用时,用户和应用之间有很多种条件需要满足,每一种不同的情况都对应着一个场景。举例说明:用户在没有订购此应用,并且此应用恰好又需要订购才能够访问,这种情况下,top-Container拒绝其访问;再比如,用户没有订购过这个应用,此应用是一个基础应用不需要用户订购,这种情况下,top-Container容许其访问。

  故事和场景的作用就是定位,故事定位要描述系统的功能模块,场景定位要描述该功能模块下哪种条件下的系统行为。

  ◆ 通用语言

  语言是用于沟通,向别人表达自己的意思的工具,我们的基于BDD的测试用例的代码描述着系统的一个行为,可以按照传统的写法将这个行为描述清楚,但是别人来看时,肯定要花不少的精力。所以BDD提供一个通用的模板,并且要客户,开发人员和测试人员一起定义一套通用语言来做描述,这样做,既可以方便测试人员自己写测试代码,也能方便别人看懂,也可以为开发人员的实现代码提供类名,方法名。

  示例

  通用模板示例:

  Story: 标题(描述故事)
  As a [角色]
  I want [特征]
  So that [利益]
  Scenario 1: 标题(描述场景)
  Given [上下文]
  And [其他上下文]…
  When [事件]
  Then [结果]
  And [其他结果]

  举例说明:

  Story: 用户访问应用
  As a 用户
  I want 访问淘宝开放平台的一个应用
  So that 我可以使用这个应用提供的服务
  Scenario 1: 用户未订购此应用
  Given 一个应用
  And 此应用需要订购才能访问
  And 用户没有订购此应用
  When 该用户访问此应用
  Then 访问被拒绝
  And 返回用户没有订购此应用的错误码及错误信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值