首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单击导致弹出Java Selenium Webdriver的按钮。

问单击导致弹出Java Selenium Webdriver的按钮。
EN

Stack Overflow用户
提问于 2018-04-11 05:26:03
回答 2查看 1.3K关注 0票数 0

我试图写一个程序,打开链接,点击投稿按钮,然后点击给予按钮。然而,当你实际点击投稿按钮时,它会打开一个弹出,而我的程序在点击投稿按钮时什么都没做。我怎样才能点击这两个按钮呢?

代码语言:javascript
复制
package com.demo.testcases;

import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.safari.SafariDriver;

public class FirstClass {

  public static void main(String[] args) throws InterruptedException {

    WebDriver driver = new SafariDriver();
    driver.manage().window().maximize();

    String giving = "https://givingday.northeastern.edu/campaigns/club-sports-3";

    driver.get(giving);

    Thread.sleep(3000);

    driver.findElement(By.linkText("CONTRIBUTE")).click();

    Thread.sleep(3000);

    driver.findElement(By.linkText("GIVE")).click();
  }
}
EN

回答 2

Stack Overflow用户

发布于 2018-04-11 05:57:31

根据您的问题,给予的文本按钮是一个<button>标记,因此调用By.linkText()将无法工作。您可以使用以下任何一种定位器策略以及_WebDriverWait_to单击元素:

  • cssSelector: 新WebDriverWait(driver,WebDriverWait“)).click();
  • xpath: 新的20).until(ExpectedConditions.elementToBeClickable(By.xpath("//button@class='vote_modal_redirect_btn WebDriverWait(驱动程序,btn-主程序‘并包含(.,’Give‘).click();
票数 1
EN

Stack Overflow用户

发布于 2018-04-11 07:07:12

当您单击“贡献”按钮时,它将打开弹出窗口,因此请执行以下操作:

  1. 使用getWindowHandles方法和切换到弹出窗口。
  2. 切换到弹出窗口后,执行所需的操作(接受或关闭它)。
  3. 使用窗口句柄返回原始/主窗口。
  4. 现在执行下一个操作。

winodw处理示例代码:

代码语言:javascript
复制
   // Store and Print the name of all the windows open                

        Set handles = driver.getWindowHandles();

        System.out.println(handles);

        // Pass a window handle to the other window

        for (String handle1 : driver.getWindowHandles()) {

            System.out.println(handle1);

            driver.switchTo().window(handle1);

            }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49767125

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档