[英]How To Automate "Right click" event in Selenium IDE and opening the link in New window/tab
我将 Selenium IDE 用于谷歌搜索场景。
1 open google
2 then type "india" and click on the search button
3 then go to any link and right clicking on that link
and open that link in new tab or window
到目前为止我所做的是
<tr>
<td>open</td>
<td>/</td>
<td></td>
</tr>
<tr>
<td>type</td>
<td>id=gbqfq</td>
<td>india</td>
</tr>
<tr>
<td>click</td>
<td>id=gbqfb</td>
<td></td>
</tr>
<tr>
<td>contextMenu</td>
<td>//*[@id='rso']/li[3]/div/h3/a</td>
<td> </td>
</tr>
我不能做的是:右键单击链接,然后在新窗口中打开该链接。
任何人都可以请建议需要做什么。
“右键单击链接,然后在新窗口中打开该链接”这是浏览器功能而不是页面功能..这就是您无法在 IDE 中记录它的原因。
如果您想了解录制右键单击,请尝试单击此处
您可以按 Ctrl 键并单击链接,以便在新选项卡中打开它。
要在 Selenium IDE 中使用控制键,请使用以下关键字。
controlKeyDown ( )
//code for clicking the link
controlKeyUp ( )
您可以获取该链接的 href 属性,然后使用 openWindow() 命令在新窗口中打开它。
如果您已将 Firefox 配置为打开新选项卡而不是新窗口,则以下会在新选项卡中打开 URL。
storeAttribute | link-locator-here | myURLvariableName |
getEval | window.open( storedVars.myURLvariableName, '_blank' /* or tab target name*/ ); |
经过几天的研究,终于找到了在Selenium IDE中通过execute script
命令模拟右键的方法:
const el = document.querySelector('CSS_SELECTOR_GOES_HERE');
const eventContextMenu = new MouseEvent('contextmenu', {
bubbles: true,
});
el.dispatchEvent(eventContextMenu);
这里的诀窍是bubbles: true
是必需的参数。
PS: 链接到 GitHub 线程中的原始答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.