QTP获取页面链接并点击、拖拽方法
2010-06-28 23:49
309 查看
其实QTP要实现对使用ie核心的浏览器打开的web页面的操作是比较简单的,基本上有两种方式:使用qtp的描述性编程,查找web链接并操作;使用DOM对象提供的某些方法和属性实现预期功能。现在对于页面操作主要有两种,点击和拖拽。
对于页面链接点击方法1:
对于页面链接点击方法2:
对于页面链接拖拽的方法:注意这里需要先找到page页面相对于屏幕左上角的坐标,然后在获取每个链接的绝对坐标。
其实在这里后面有机会的话再深入了解一下DOM相关的方法对于自动化有比较大的意义。
对于页面链接点击方法1:
If window("Window").Page("百度一下,你就知道").WebButton("百度一下").Exist =true Then Set oDesc = Description.Create oDesc( "micclass" ).Value = "Page" set pageObject = window("Window").ChildObjects( oDesc ) Set oDesc2 = Description.Create oDesc2( "micclass" ).Value = "Link" set linkObject =pageObject(0).ChildObjects( oDesc2 ) linkObject(5).click print logTimer()&"执行页面链接点击动作" End If
对于页面链接点击方法2:
If Window("Window").Page("page").Exist =true Then Set objLists = Window("Window").Page("page").Object Set arrayLink= objLists.getElementsByTagname("a") listLength =arrayLink.length Randomize selectLink = Int(listLength * Rnd) If listLength >10 Then arrayLink(selectLink).focus arrayLink(selectLink).click() End If End If
对于页面链接拖拽的方法:注意这里需要先找到page页面相对于屏幕左上角的坐标,然后在获取每个链接的绝对坐标。
If Window("Window").Page("page").Exist =true Then Set objLists = Window("Window").Page("page").Object Set arrayLink= objLists.getElementsByTagname("a") page_x = Window("Window").Page("page").GetROProperty("abs_x") page_y = Window("Window").Page("page").GetROProperty("abs_y") listLength =arrayLink.length Randomize selectLink = Int(listLength * Rnd) Set objlink = arrayLink(selectLink) If objlink.disabled = false Then objlink.focus print "链接名称:"& objlink.innerText print "链接地址:"& objlink.href set rect= objlink.getBoundingClientRect() link_x=cint(page_x+rect.left ) link_y=cint(page_y+rect.top) drop_x=link_x+10 drop_y = link_y+10 Set deviceReplay = CreateObject( "Mercury.DeviceReplay" ) deviceReplay.MouseDown link_x,link_y,1 deviceReplay.MouseMove drop_x,drop_y deviceReplay.MouseUp drop_x,drop_y,1 End If End If
其实在这里后面有机会的话再深入了解一下DOM相关的方法对于自动化有比较大的意义。
相关文章推荐
- js 点击一个链接后变色,但在点击页面其它链接不变色(方法二)
- JS实现点击按钮获取页面高度的方法
- 【QTP】Page对象:获取页面的链接和图片的个数
- JavaScript获取页面中超链接数量的方法
- iOS-获取UIWebView或者WKWebView页面的左右图片链接,点击查看大图
- Python获取当前页面内所有链接的四种方法对比分析
- 点击链接按钮后页面总是自动滚动至顶部的解决方法
- 处理android手机html5页面中,点击text文本框无法自动获取焦点的处理方法
- iOS-获取UIWebView或者WKWebView页面的左右图片链接,点击查看大图
- 获取当前页面的所有链接的四种方法对比(python 爬虫)
- PHP将页面中点击数量高的链接进行高亮显示的方法
- PHP Action中跳转到别的方法、页面中点击链接跳转到ACtion中方法、AJAX提交传参给ACTION
- 处理android手机html5页面中,点击text文本框无法自动获取焦点的处理方法
- 获取时时点击事件 和清除页面内容的方法
- HTML点击按钮或链接不跳转只刷新页面的方法
- 获取统计页面所有a链接的点击次数(JS初学者)
- easyui 后台页面,在Tab中的链接点击后添加一个新TAB的解决方法
- PHP将页面中点击数量高的链接进行高亮显示的方法
- js 点击一个链接后变色,但在点击页面其它链接不变色(方法一)
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目