Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby watir webdriver单击图像_Ruby_Watir Webdriver - Fatal编程技术网

Ruby watir webdriver单击图像

Ruby watir webdriver单击图像,ruby,watir-webdriver,Ruby,Watir Webdriver,各位 我有一个带有以下HTML代码的图像: <div unselectable="on" class="x-grid-cell-inner x-unselectable" style="; text-align: right;" id="ext-gen1453"> <img alt=""src="data:image/gif;base64,FRFRFR/GFFFFFFFFFF==" class="x-action-col-icon x-action-col-0 folder-a

各位

我有一个带有以下HTML代码的图像:

<div unselectable="on" class="x-grid-cell-inner x-unselectable" style="; text-align: right;" id="ext-gen1453">
<img alt=""src="data:image/gif;base64,FRFRFR/GFFFFFFFFFF==" class="x-action-col-icon x-action-col-0 folder-action-add folder-action" data-qtip="Add New Music File" id="ext-gen1300">

当我点击图像时,它会打开一个弹出窗口,这样我就可以添加新的音乐文件,我尝试了一些方法,但我无法点击该图像。有什么建议吗


非常感谢

到目前为止,您还没有一种一致的方法来实际识别元素。根据您在评论中所说的,您已经尝试了不存在的“text”属性和“id”属性,它们是自动生成的,每次都不同

您需要找到一种一致识别元素的方法。通常,最好在元素上使用语义类,以使样式设置和测试更容易、更不易破坏。您已经声明了几个类,也许“FolderActionAdd”清楚地表达了按钮的意图?如果没有,您可以添加一个,例如“添加音乐文件”


然后您应该能够使用watir按其类选择元素,我不熟悉语法,但猜测,
@browser.image(:class=>'addmusic file')
可能会完成此任务。

您可以按类或类的部分匹配来单击它

@browser.image(:class=>/folder-action-add folder-action/).click

这是一个列表,我想对于watir webdriver来说基本上是一样的。

您能给我们展示一下您迄今为止尝试过的代码吗?还有你所说的“我不能点击”是什么意思?是否发生了错误?或者你只是没有看到预期的结果?谢谢你的回答Jon,我尝试了这个
@browser.image(:text=>“添加新音乐文件”)。单击
,我得到了错误
无法定位元素,使用{:tag\u name=>“img”,:text=>“添加新智能文件夹”}(Watir::Exception::UnknownObjectException)
你试过按ID定位元素吗(在本例中为“ext-gen1300”)?标记实际上没有
text
属性,只有
data-qtip
属性,因此您在上面粘贴的代码没有找到它也就不足为奇了。您提到的这个按钮是什么?马克,我更新了它,我是指图像