前六行代码以Java 包的形式向我们展示了RobotJ 的秘密,也就是几组相关API (应用程序编程接口)。每个包和其内容信息列于下表1。
表1:由记录器功能生成的脚本中包括的核心包
第一项就是Resources.First_oneHelper 类。该类是记录器分析正在进行测试的应用程序时创建的。对于每个用户界面上的控件来说,创建的方法都使用该控件的名称。然后就可以使用该方法与控件进行交互。由于RobotJ 使用的是面向对象的编程方法,所以每个控件都是一个黑箱,对于该类所作的任何更改对于使用的方法来说影响微乎其微,甚至没有影响。RobotJ 通过广泛的在线帮助提供有关其他包的信息。
再次参见清单2,在import 声明下方有如下代码行:
第一行在自动创建的First_oneHelper 类的基础上继承得出一个新类(First_one)。当RobotJ 分析正在进行测试的应用程序并且创建大量的方法以实现对应用程序控件的轻松访问时,First_oneHelper类被创建。(First_oneHelper 本身继承自RobotJ 的Helper 基类)。在First_one 新类中,创建了一个方法testMain ()。testMain()函数中的第一个命令就是调用startApp(),其中还带有参数,该参数与我在Configure Editor(配置编辑器)中创建的入口相匹配("Xtend Development,Inc.")。现在如果我要改变应用程序的存放地址的话(例如,改变URL),我只需修改Configure Editor(配置编辑器)中的值,脚本就会继续运行而不受影响。
脚本中的下一行搜索调用startApp ()时创建的浏览器。(我单击一下窗口,验证它是否已被选中): Browser_htmlBrowser(Document_XtendDevelopmentInc(),DEFAULT).click(atPoint(382,11));随着应用程序的运行,需要验证我是否处于要进行测试的页面。
验证脚本的同时可以添加验证值(VP)。单击记录窗口(图4)中从左边数的第5个按钮完成该操作,随后即可显示图6中的对话框。
图6:验证值可以助您确保您的位置
在该对话框中设有三个选项卡。第一个选项卡用于单击指针并将指针拖至验证过程中使用的对象上。图6中的第二个选项卡在RobotJ 将对象映射于浏览器之后,分等级地显示每个对象。为了验证已经处于Xtend Development 的主页,我选择了该页面特有的consultingsm.jpg 图像。如果RobotJ 在脚本中发现了该图像,那么就说明一切运行正常。
第三个选项卡上是一个带有秒表的指向手指,该选项卡允许向脚本中添加延迟。该延迟可以进行配置,以等待特定控件的出现。如果该控件在指定的时间内没有出现的话,即可抛出一个引起故障的异常,由RobotJ 进行日志记录。
单击图6对话框中的Next 按钮,出现用于调整VP最终对话框,如图7所示。
图7:向记录脚本中添加验证值(VP)的最后一步。
填写数值,单击Finish 按钮向脚本中插入VP 调用,然后继续进行记录:
consultingsmjpg_textVP().performTest();
(注意:在验证中使用的对象名称是用来创建consultingsmjpg_textVP()对象的,其中还包括继承的方法performTest()。)在这里添加VP ,既不是正确的,也不是错误的。一般情况下,在进行关键浏览时才添加VP ,这样可以在出现故障时及时停止执行。
文章来源于领测软件测试网 https://www.ltesting.net/