热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

easyb,我对你终于失去了耐心

很多年前,我还不知道BDD为何物。当我做测试的时候,我就想能不能有一个工具,能够边写测试边写文档,测试完成了,文档也完成了。甚至想做一些annotation,按照某个规范编写测试,就能根

很多年前,我还不知道BDD为何物。

当我做测试的时候,我就想能不能有一个工具,能够边写测试边写文档,测试完成了,文档也完成了。

甚至想做一些annotation,按照某个规范编写测试,就能根据这些annotation产生出文档。

一直没有时间做,就把这事情放下了,直到遇见的jsspec

我开始使用jsspec编写BDD测试。可是不过瘾。因为js大量的是UI交互,把这些交互过程也写成jsspec太痛苦了。

 

最近终于有机会开始使用easyb测试我那复杂的工作流项目。

easyb的一切看上去是那么美好:强大的动态语言groovy,清晰的BDD概念,简洁的easyb DSL...

我花了整整一周的时间使用它,一直到今天下午写完了我的第10个scenario。但是,我终于------我厌烦了!

不能说这是easyb的错,只是Java/Groovy相关很多问题集中到了一起。

下面列举它们的种种不爽之处:

 

  1. easyb没有eclipse插件,我得用ant来做开发。再也看不到junit那美丽的绿色条了
  2. 乱码,还是乱码。我折腾了一天,。只找到一个解决办法:不使用ant,直接用easyb的命令行。算了,开发用ant编译,到时候要生成文档再用Java命令行吧。
  3. 编辑器太糟糕了,本来groovy还能有点代码提示。如今dsl了,代码提示,这个就不用想了。这个不怪easyb的事,怪就怪groovy没有一个优秀的编辑器。groovy eclipse plugin也就勉强可用
  4. 最头疼的事情来了:这也来源于groovy的问题,只是由于easyb对groovy又做了dsl,造成:出错的行号不见了。你测试代码的时候总会出错吧,总要找到第几行出错吧,但是,easy了以后,很多的错误就像这样:test.executable.Script1$_run_closure3_closure10.doCall(Script1.groovy:130)。并且,在story.xml中的错误信息还不全。
  5. BDD产生的测试文档真的好用吗?我看了我写的10个场景,仍然不知所云。很多地方需要嵌入图片才可能描述清楚。可是,easyb的dsl还没有强大到可以嵌入图片啊

种种问题组合在一起,开发效率并没有因为动态语言而增加,反而3和4的原因开发效率降低了;产生的文档也没有想象中那么美。既然没有什么好处,为什么不回去使用我的junit呢

 

别了easyb,也许过几年等你成熟了我会重新投入你的怀抱。现在还是回去看我的绿色条吧。

 

下面再把这几天的成果留一点足迹吧。

使用命令行解决乱码问题,注意类路径要保护easyb的那三个jar包:

java -Dfile.encoding=utf-8 org.easyb.BehaviorRunner builder.story-txtstory target.txt

 

一个能运行的ant脚本:

 

一个成功的scenario,注意要以.story或者.Story.groovy结尾



推荐阅读
author-avatar
手机用户2602934963
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有