WEB开发网
开发学院软件开发Java 使用 SWTBot 为您的 eclipse 应用创建自动化 GUI ... 阅读

使用 SWTBot 为您的 eclipse 应用创建自动化 GUI 测试用例

 2010-03-22 00:00:00 来源:WEB开发网   
核心提示: 实际应用的角度在具体的测试用例开发中,SWTBot 可以作为您操作 SWT 控件的一个入口,使用 SWTBot 为您的 eclipse 应用创建自动化 GUI 测试用例(6),如果您需要测试的是一个普通 eclipse 应用,那么可以参考前面介绍的 AddUpdateSiteTest 用例那样,

实际应用的角度

在具体的测试用例开发中,SWTBot 可以作为您操作 SWT 控件的一个入口,如果您需要测试的是一个普通 eclipse 应用,那么可以参考前面介绍的 AddUpdateSiteTest 用例那样,从 SWTWorkbenchBot 对象开始,通过 Bot 对象的方法找到目标控件,然后通过目标控件的代理对象,您就可以模拟鼠标、键盘等操作了,也可以获取目标控件的状态信息。这里有一些小细节,一般来说,可以认为 GUI 对象是树状结构的,通过指定恰当的父对象作为构造函数的参数,可以更加快速地找到目标控件,您可以通过这一点提高 SWTBot 的查找效率。

SWTBot API 非常简单、易用,代码的可读性也非常好,您可以看下面图 9 中列出的 SWTBot 查找 Button 控件代理类的方法,不要诧异,方法的功能就如您看到的名字,其他的控件也同样可以通过 tooltip,text,ID 等简单条件查找。由于完善的定位控件的方法,不需要了解查找器或者匹配器的细节就可以完成您的大多数测试需求。

图 9. SWTBot 部分方法示例
使用 SWTBot 为您的 eclipse 应用创建自动化 GUI 测试用例

在执行前面的测试用例的时候,如果您觉得执行的速度太快了,您可以定义脚本回放的间隔等参数来控制执行速度。SWTBot 提供了简单易用的配置入口,您可以通过修改 SWTBotPreferences 类的静态参数来达到这个目标,一些默认值也可以通过设置环境变量来修改。

为方便生成脚本,常见的图形界面测试工具通常支持录制的方式来创建脚本,即通过记录器(Recorder)来记录您的动作。SWTBot 有一个不是非常完整的记录器实现,不幸的是,在最近的版本中(笔者使用的是 2.0),记录器已经被移出 SWTBot 安装包,如果您确定自己非常需要记录器,可能不得不退回到 1.3 版。不过从图形界面测试实践的角度来看,使用记录器生成的脚本在代码复用、可维护性等方面也许并不是一个非常好的方法。抛却这些测试理论的考虑,现实的问题是,如果直接书写脚本,需要有一定的 SWT 控件和 Eclipse 界面知识,比如,您可能不了解要测对象具体是什么类型的。如果您有这样的困难,可以使用 SWTBot 自带的 EclipseSpy 视图(通过热键 CTRL+SHIFT 可以激活该视图),它会把您鼠标指到的控件信息详细的列出来。当然,您也可以借助 SWT Development Tools工具包或者 eclipse 自带的 Plug-In spy 的帮助来完成测试用例开发,有关这些工具的使用,您可以参考相关文档,本文就做进一步介绍了。

总结

通过前面的介绍,相信您对 SWTBot 的功能已经有了一定的了解,它强大的测试功能、代码优异的可维护性、可读性等令人印象深刻,相信可以作为您测试 SWT、Eclipse 插件和 RCP 应用的一个不错的选择。

上一页  1 2 3 4 5 6 

Tags:使用 SWTBot eclipse

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接