Пытаясь автоматизировать щелчок правой кнопкой мыши и выбрать первый вариант «Открыть ссылку в новой вкладке» - PullRequest
0 голосов
/ 20 мая 2019
public void openNewEbay() throws InterruptedException {
    // to click on open link on new tab
    Actions rightclick = new Actions(driver);
    WebElement elementlocator = driver
            .findElement(By.xpath("//li[@class='hl-cat-nav__js-tab']//a[contains(text(),'Electronics')]"));

    //rightclick.contextClick(elementlocator).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build().perform();
    Thread.sleep(3000);
    rightclick.contextClick(elementlocator).build().perform();
    Thread.sleep(5000);
    rightclick.sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build().perform();

    rightclick.sendKeys(Keys.RETURN).build().perform();

    /*ArrayList tab = new ArrayList(driver.getWindowHandles());
    System.out.println(tab.size());*/
}

public void openNewEbay() throws InterruptedException {
    // to click on open link on new tab
    Actions rightclick = new Actions(driver);
    WebElement elementlocator = driver
            .findElement(By.xpath("//li[@class='hl-cat-nav__js-tab']//a[contains(text(),'Electronics')]"));

    //rightclick.contextClick(elementlocator).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build().perform();
    Thread.sleep(3000);
    rightclick.contextClick(elementlocator).build().perform();
    Thread.sleep(5000);
    rightclick.sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build().perform();

    rightclick.sendKeys(Keys.RETURN).build().perform();

    /*ArrayList tab = new ArrayList(driver.getWindowHandles());
    System.out.println(tab.size());*/
}

Проблема кода Selenium: попытка автоматизировать щелчок правой кнопкой мыши, но когда я щелкаю правой кнопкой мыши, он не перемещается в опции щелчка правой кнопкой мыши, а щелкает элементы.Я хочу выбрать опцию «Открыть ссылку на новой вкладке»

1 Ответ

0 голосов
/ 20 мая 2019
Try below code:
public void openNewEbay() throws InterruptedException {
    // to click on open link on new tab
    Actions rightclick = new Actions(driver);
    WebElement elementlocator = driver
            .findElement(By.xpath("//li[@class='hl-cat-nav__js-tab']//a[contains(text(),'Electronics')]"));

    //rightclick.contextClick(elementlocator).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build().perform();
    Thread.sleep(3000);
    rightclick.contextClick(elementlocator).build().perform();
    Thread.sleep(5000);
    rightclick.sendKeys("t").build().perform();

// здесь "t" выполняет операцию с новой вкладкой. Если вы используете Keys.ARROW_DOWN из действий класса будет // не перемещать мышь в контекстное меню, а также мы не можем проверить параметры, доступные в // контекстном меню

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...