用Rational Functional Tester创建随需应变的自动测试脚本
2010-01-11 00:00:00 来源:WEB开发网这段脚本使用方法document_htmlDocument()来调用页面的Document对象,使用方法text_q()来调用搜索输入框,使用方法 button_search()来调用搜索按钮。这些方法是由脚本SearchLotusLink的父类SearchLotusLinkHelper定义的:
protected GuiTestObject document_htmlDocument()
{
return new GuiTestObject(getMappedTestObject("document_htmlDocument"));
}
protected TextGuiTestObject text_q()
{
return new TextGuiTestObject(getMappedTestObject("text_q"));
}
protected GuiTestObject button_search()
{
return new GuiTestObject(getMappedTestObject("button_search"));
}
脚本回放时,Rational Functional Tester利用"专用测试对象图"进行静态识别,可以从浏览器这个顶级容器开始,层层深入地定位到指定的某个对象。但这种呆板的对象查找方式也留下了很大的隐患:Web页面里层次结构的变化屡见不鲜,而这种变化对于对象的查找而言,有着致命的影响。在这种模式下要想适应页面层次结构的变化,只能重新录制对象,生成新的"专用测试对象图"。代价如此之大的维护方式使得自动化测试几乎没有可行性。
因此必须要将对象的识别同具体的"专用测试对象图"分开,实现对象的动态识别。页面对象都有一个共同的父类:com.rational.test.ft.object.interfaces.TestObject,而它的方法find(Subitem properties)正是用来在某个特定范围内查找满足条件的所有对象。借助它,我们可以对SearchLotusLinkHelper 进行改造,使其与"专用测试对象图"不再紧密地耦合在一起。
Tags:Rational Functional Tester
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接