简体   繁体   中英

How To Automate "Right click" event in Selenium IDE and opening the link in New window/tab

I am using Selenium IDE for a google search scenario.

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 

what i have done till now is

<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>

What i am not able to do is : right click on the link and then open that link in new window.

can anyone please suggest what need to do .

"right click on the link and then open that link in new window" this is the browser feature not the page feature.. that why you not able to record it in IDE.

If you wanna know about recording right click, try click here

You can Press Ctrl key and click on the link so that it gets opened in a new tab.

For using control key in Selenium IDE use the below keywords.

controlKeyDown ( ) 

//code for clicking the link

controlKeyUp ( ) 

您可以获取该链接的 href 属性,然后使用 openWindow() 命令在新窗口中打开它

Following opens the URL in a new tab, if you've configured Firefox to open new tabs instead of new windows.

storeAttribute | link-locator-here | myURLvariableName |
getEval | window.open( storedVars.myURLvariableName, '_blank' /* or tab target name*/ ); |

After spending a couple of days for research, I finally found the way to simulate Right-click in Selenium IDE through the execute script command:

const el = document.querySelector('CSS_SELECTOR_GOES_HERE');

const eventContextMenu = new MouseEvent('contextmenu', {
    bubbles: true,
});

el.dispatchEvent(eventContextMenu);

The trick here is that bubbles: true is required param.

PS: Link to original answer in GitHub thread .

在此处输入图像描述

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM