使用QTP需要学会变通

发表于:2009-7-03 13:56

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:51Testing博客    来源:51Testing博客

  只要玩过QTP或者从事过自动化测试的人来说,都应该知道工具不是万能的,在实际测试中,由于应用系统的多样性,完全依靠录制回放方式,不可能全部适用,往往出现的问题就是正常录制完成,但是回放的时候错误不断,当然导致错误的原因有很多,有些情况可以改变QTP的设置解决问题,但是还有很多情况往往靠改变工具的设置是解决不了问题的,这就需要我们学会变通,巧妙地绕开问题,达到测试目的。中国农业银行个人网银系统的登陆密码输入就是很好的一个例子,有兴趣的朋友可以亲自试试,地址是:https://easyabc.95599.cn/SlfRegPer/netBank/zh_CN/entrance/logon.aspx

  当点击“登陆密码”输入框后,就会弹出一个密码键盘让你通过它输入密码,细心的朋友肯定会发现,每一次弹出的密码键盘,上面的数字排序是不一样的,也就是说这样的方式会导致我们QTP工具录制的脚本肯定不能回放,我们通过QTP的 Object spy工具可以知道这个密码键盘其实是张图片,图片上面显示着数字,大家可能会问既然是张图片为什么点数据所在的区域就能输入对应的数字呢,其实这个很简单写网页的人在数字所在区域加了map元素,当你点击数字区域时其实是点击在MAP对象上的(在QTP里会把MAP元素识别为WebArea对象)你点击了那个MAP元素,当然它就知道会产生什么数字了,但对于我们QTP工具来讲,不可能知道图片上那个区域对应那个数字,似乎这样看起来我们好像没法自动化了,其实不然,我们可以稍微变通一下,完全可以不用管这个密码键盘,我们照样可以输入密码,实现方法如下:

  把密码输入框的对象添加到对象库后,直接调用对象的setAttribute方法就可以了

  Browser("中国农业银行").Page("中国农业银行").WebEdit("password").Object.setAttribute "value","123"

  其实解决方法很简单,只是借此例子说明,变通思维对自动化测试的重要性。

《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • powell505
    2009-7-17 15:55:17

    我觉得楼上说的有道理,个人感觉遇到这种情况还是要手工测试的比较好!

  • Eric_Lee
    2009-7-03 16:34:36

    这个site果然不支持firefox。。。你这样直接设定密码输入框的值是否有悖于“模拟用户”输入这一准则类?

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号