运行结果:

  说几点:

  ● BDD,只是一种思想,一种轻量级测试实践;BDD注重有效文档,注重用户故事的拆分细化 。

  ● story可以使得黑盒与自动化人员分离;只要story控制的好,可以招廉价开发来实现自动化

  ● 跟你可以用google guice, picocontainer替换spring一样,BDD框架可以自由选择,因为都是提供相同风格的功能

  ● 比如py里可以用lettuce,.net上有cuke4nuke,groovy有easyb, spock,sikuli也支持BDD等

  ● VBS受限于语言表达力,别想BDD了。

  ● 如果你的企业愿意花几十万(不是为了只卖贵),还不如只花几万来投在人力建设上,通过开源测试来提升团队, 企业里没有什么比人才更可贵的了。

  ● BDD对粘合自动化或者框架的要求,支持代码编写并启动,比如selenium watir等,而依赖特定GUI的不见得适合。

  ● 你不见得需要想开发QTP框架样重复造轮子,合理的使用开源社区现有轮子即可。

  ● BDD可以与bromine/robotium一起,测试iphone/android。

  ● BDD工具完全可以与CI整合,方式多种多样。

  目前情况下,BDD缺少一个GUI界面的故事管理工具,你可以自己开发一个,或者买商业的,不过更多的人选择把story帖在墙上。

  随着cucumber-jvm的火热,到了该是BDD成为测试主流的时候了,毕竟BDD只是一种思想,一种表现形式,不是一种具体的思路,也不强制你购买某个厂商的工具(当然thoughtworks也有BDD工具twist);现在企业都讲究整合,作为广大发展中测试人员,特别是在成长中公司的测试人员,拿起你的斧头,把该砍的都砍掉,做轻量级测试吧!你会找到自己的乐趣的。

  常用BDD框架:JBehave rspec cucumber cuke4nuke spock等等常见支持与BDD粘合的工具:watir selenium celerity white UIA3.0 robotium bromine(iphone) webaii soapui(core)等

  常见与BDD一起使用的编程语言:ruby python groovy node.js java c# erlang lua,是没有VBSwebdriver,自动化(特指测试自动化)领域的hibernate;cucumber,自动化领域的spring。当冬眠的熊遇上春天……

  让广大自动化人员在开源世界中热起来吧!