通过缓存对象路径的方式提高RFT的对象识别效率
上一篇 /
下一篇 2012-10-15 20:01:26 / 天气: 阴雨
/ 心情: 郁闷
/ 精华(2)
/ 置顶(2)
/ 个人分类:RFT
又是漫漫长夜,无心睡眠……这次文章是技术总结,不是随想,所以省去开头和暖场,直接切入正题。本文档对于如何使用RFT+XPATH提高自动化测试的执行效率提供了一种新的思路,就是缓存对象路径,(PS:没用过RFT做自动化测试的同学可以忽略了 ,用watir的同学也可以忽略了。)51Testing软件测试网i5_6q2FZ:zC%D9R
界面对象识别及维护的费效比是UI自动化测试永远的话题
V,GgtKwJ0UI层的自动化测试,提高脚本的执行效率是永远的主题,我们必须把一轮脚本的执行时间控制在可接受的范围内,当脚本的总体执行时间很长时,我们就需要对其进行优化,优化的方法无非是三种,1、优化用例,减少无效用例的个数;2、提高脚本识别UI对象的效率;3、分布式执行。本文介绍的方法属于第二种,提高脚本识别UI对象的效率51Testing软件测试网_j8o
NW
jy[f_
&X(l\ xp-x0
R;h@\
X|0什么是RFT
RFT是IBM的一款自动化测试工具,它的作用和QTP类似,使用JAVA作为脚本语言,ECLIPSE作为IDE,优雅并且强大。RFT识别对象的核心方法是RootTestObject的find方法。我们做自动化测试的时候,通过对FIND方法的封装实现了自己的对象识别框架。但是find方法的执行效率问题一直是我的心病。之前的情况是查找对象时,执行一次find方法至少要4-6秒的时间,几百个用例执行下来执行时间就让人无法忍受了,十几个小时……只能晚上跑脚本,早上来看结果,真赶到上午发版的时候,根本指望不上自动化测试能帮上什么忙,所以必须要想办法缩短脚本执行的总体时间,提高对象的识别效率。
0db4l j2N
mS0
XPATH是一种XML的查询语言。简洁,高效。在IBM的开发者社区论坛里,有专门的一篇文章讲解如何结合RFT+XPATH来实现动态识别对象,很赞。这里给出文章的链接:《使用 XPath 在 Rational Functional Tester 中动态识别对象》,作者刘哲,段雪飞,邢静。在此表示感谢并崇拜一下。另外多说一下,IBM的开发者社区真的很有料,他们的文档库里关于自动化测试的文章建议大家通读,保证你获益匪浅。51Testing软件测试网3S]ov
Rh