有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何单击“继续”按钮完成Selenium Java中的调查

我试着自动化一个调查页面。一切都很好,直到我到达最后一个按钮,我不能点击

我尝试的是:

 @FindBy(xpath = "//div[contains(@class,'question-12')]//a[@id='next']")
    WebElement continua10;
    @FindBy(xpath = "//div[contains(@class,'question-14')]//a[@id='next']")
    WebElement continua;
    @FindBy(css = "#prev")
    WebElement back;
 
    @FindBy(css = "#page-title")
    WebElement result_title;

    public void completeSurvey() {

        JavascriptExecutor executor = (JavascriptExecutor) driver;
        executor.executeScript("arguments[0].click();", ages);
        executor.executeScript("arguments[0].click();", sex);
        executor.executeScript("arguments[0].click();", start);
        executor.executeScript("arguments[0].click();", question1);
        executor.executeScript("arguments[0].click();", question2);
        executor.executeScript("arguments[0].click();", question3);
        executor.executeScript("arguments[0].click();", question4);
        executor.executeScript("arguments[0].click();", question5);
        executor.executeScript("arguments[0].click();", question6);
        executor.executeScript("arguments[0].click();", question7);
        executor.executeScript("arguments[0].click();", question8);
        executor.executeScript("arguments[0].click();", question9);
        //executor.executeScript("arguments[0].click();", question10);
//        JavascriptExecutor js = (JavascriptExecutor) driver;
//        js.executeScript("window.scrollBy(0,200)", "");
        executor.executeScript("arguments[0].click();", question10a);
        executor.executeScript("arguments[0].click();", question10b);
        executor.executeScript("arguments[0].click();", question10c);
        executor.executeScript("arguments[0].click();", question10d);
        executor.executeScript("arguments[0].click();", question10e);
        executor.executeScript("arguments[0].click();", question10f);
        executor.executeScript("arguments[0].click();", question11);
        continua.click();
         disclaimer.click();
    WebDriverWait wait = new WebDriverWait(driver, 30);
    wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(xpath = "//div[contains(@class,'question-14')]//a[@id='next']")));
    continua.click();

本问卷的每一步都会用到代码。我需要点击最后一个“继续”按钮


共 (1) 个答案

  1. # 1 楼答案

    对于“下一步”部分按钮,您可能需要定义一个单独的xpath:

    (xpath = "//div[contains(@class,'actions')]//a[@class='btn']")
    

    试试这个,让我知道它是否有效