GZW自动化洲试
对于GUI测试自动化,通常测试工具使用两种捕捉/回放技术,一种是通过记录鼠标事件(如点击、移动)和键盘事件来完成记录和回放,另一种是记录和回放是基于控制的识别和操作,每个脚本的执行是控制对象的属性变化或事件触发。我们可以从开源社区获得以上两种操作Linux平台上的典型测试工具,如平台上的典型测试工具,Knee和LDTP等。
(一)Xnee工具
在Linux操作系统的xll环境下,Xnee能够记录、回放和分发用户的动作。Xnee捕捉/回放技术是记录鼠标事件和键盘事件。进入录制模式时,Xnee记录发送到和和来自Xserver复制协议数据并生成Xneesession文件。在回放模式下,Xnee读取XneeSession在事件中,模仿整个录制过程(即用户操作过程)xserver之间的通信,录制的应用软件(Xclient)则接收来自xserver消息,完成预设动作。
(二)LDTP测试工具/框架
LinuxDesktopTestingProject(LDTP)测试工具/框架可以根据用户在应用界面中的选择记录脚本。LDTPI具使用了Gnome环境下的Accessibility库是辅助选项库(at-spi)。通过使用辅助选项可以获得应用,通过使用辅助选项可以获得应用AT-SPI协议提供的关于用户界面的信息和界面控件的当前状态或属性。LDTPI具体/框架的系统结构如下:
AT-SPI基本思想是为用户界面的可视化元素提供相应的辅助对象,每个录制脚本的执行都是基于这些辅助对象。希望使用它LDTPI测试应用程序需要激活辅助选项。
(三)GUI自动化测试工具的应用
在实际的GUI在自动化测试中,LDTPI应用场景会更广泛。LDTPI可以识别窗口中的对象(如按钮),测试脚本使用情况LDTP的API接口,每个API接口对UI对象有两个最基本的入口,即窗口和对象。窗口通过窗口的类型和名称(即标题)进行识别,对象通过控制器的类型和名称(标签或相关标签)进行识别。我们也可以通过at-pokel具显示激活辅助选项的应用窗口的对象和对象属性。在测试Linux在使用桌面产品和服务器产品的过程中,LDTPI可以测试任何启用辅助选项的工具Gnome应用,如Mozilla,OpenOffice.org,Evolution邮件客户端,Nautilus此外,还可以测试文件浏览器等UI界面基于Swing的Java应用,以及KDE4.O上基于QT4.0的应用等。
而Xneel应用程序类型没有特别的限制,对于一些简单的窗口验证测试和界面稳定性测试更有效。Xnee与基于控件捕获和回放的工具相比,不必担心控件无法识别的问题。
从使用的角度来看,由于技术的实现,每个工具也存在一定的缺陷,如两个工具不能插入验证点,无法实现用例水平的结果验证;LDTP不能捕获界面的个别元素,不能测试不支持辅助选项的应用程序;Xneel生成的脚本可编辑性差,由于录制的脚本中的事件与屏幕坐标有关,当窗口弹出位置发生变化时,需要考虑如何处理这些变化。