如何点击网页上多次出现的网页按钮?
如何点击网页上多次出现的网页按钮?我如何点击所有这些?如何点击网页上多次出现的网页按钮?
我正在测试网站(Webstagram.com)上的“Like”按钮,该按钮用于查看和操作您桌面上的Instagram页面。
在页面上显示20张不同的图片,每张图片都有自己的“喜欢”按钮。我无法用“like”来标识它,而在externalhtml中,每个标签都有不同的值。我如何编写脚本来识别每个脚本?
以下是属性/值的一些信息。
类:btn btn-default btn-xs likeButton
htmlid:N/A
htmltag:按钮
的innerHTML:<I class="fa fa-heart"></I>Like
outterhtm升(像按钮PIC#1):<BUTTON class="btn btn-default btn-xs likeButton" type=button data-target="1194558981914665301_8054519"><I class="fa fa-heart"></I>Like</BUTTON>
outerhtml(如按钮PIC#2)
<BUTTON class="btn btn-default btn-xs likeButton" type=button data-target="1194558967727891183_339837919"><I class="fa fa-heart"></I>Like</BUTTON>
注一所列的outerHTML属性值对于两个不同的画面,展示其中的值不同。这也是outerhtml代码,我试着写点击任何像按钮,绕过任何特定的值:*
outerhtml:<BUTTON class="btn btn-default btn-xs likeButton" type=button data-target=".*_.*"><I class="fa fa-heart"></I>Like</BUTTON>
这是我试图运行该脚本失败
1) systemutil.Run "websta.me/tag/graffiti";
2) Browser("#graffiti Instagram photos").Page("#graffiti Instagram photos").WebButton("<BUTTON class="btn btn-default btn-xs likeButton" type=button data-target=".*.*"><I class="fa fa-heart"></I>Like</BUTTON> ").Click
3)wait(1)
4) Browser("#graffiti Instagram photos").Page("#graffiti Instagram photos").WebButton("<BUTTON class="btn btn-default btn-xs likeButton" type=button data-target=".*.*"><I class="fa fa-heart"></I>Like</BUTTON> ").Click
5) wait(1)
重复... -
试着这么做QTP
的这种使用方法Set oDesc = Description.Create
oDesc("micclass").value = "WebButton"
oDesc("html tag").value = "BUTTON"
oDesc("class").value = ".*likeButton"
odesc("class").RegularExpression = True
'Find all the Links
Set obj = Browser().Page().ChildObjects(oDesc)
Msgbox obj.Count 'will show how many buttons are found
For i = 0 to obj.Count - 1
Obj(i).Click
Wait 2 'waits for 2 sec
Next
您可以使用VRI (visual relations identifier)将不明确的对象(您的,如按钮)链接到定义良好的对象(图片)。
这种方式你可以说“点击像按钮,这是关闭图片X”。
另一种方法是创建一个简单的网络扩展性项目,为图片提供一个新对象,支持喜欢的图片功能。
在这种情况下,您可以轻松使用类值来查找对象的集合,请检查Vinoth S如何做到这一点的评论,而不是“。* likeButton“(因为我们不知道它将选择多少其他对象)将实际值放到类中,即btn btn-default btn-xs likeButton – user5612655