getText от выберите ul - PullRequest
       32

getText от выберите ul

0 голосов
/ 20 февраля 2019

HTML-код изображения

Мне нужен getText из li, чтобы проверить правильность отображаемой опции.Я пробовал 3 разных варианта, но ни один из них не работает правильно.Мне нужен класс 'boundlist-selected', получающий текст, это подтвердит выбранный текст.Закомментируйте вывод внутри кода.

public void DDList(WebDriver driver, String actualViews,String ReportName) throws InterruptedException {

    waitForElementPresent(driver, 30, expand_btn1);
    Thread.sleep(1000); 
    By ddlselect = By.xpath("//div[input[@name='"+ReportName+"']]/following-sibling::div");
    waitForElementPresent(driver, 30, ddlselect,ReportName);
    click(driver,ddlselect,ReportName);
    Thread.sleep(2000);
    waitForLoad(driver, 60);
    By ddlexpand = By.xpath("//ul/li[text()='"+actualViews+"']");
    waitForElementPresent(driver, 30, ddlexpand ,actualViews);
    click(driver,ddlexpand,actualViews);
    Thread.sleep(2000);
    //try 1 
    WebElement textlabel = driver.findElement(By.xpath("//li[contains(@class,'boundlist-selected')]"));
    value = textlabel.getAttribute("value");
    System.out.println("getAttribute value" + value);  // value Ouput 0
    //try 2
    String textlabel2 = driver.findElement(By.xpath("//li[contains(@class,'boundlist-selected')]")).getText();
    System.out.println(textlabel2 + "print text");  // blank output 
    // try 3 
    List<WebElement>allProduct = driver.findElements(By.xpath("//ul[@class='x-list-plain']/li"));

    for( WebElement product : allProduct){
        System.out.println(product.getText()); 
        // This print correctly all 3 value now I need to validate select  text how can I do that? 
    }
// below code to validate select gets fail as value is blank 
    if (value.equals(actualViews)) {
        Reporter.log(
                "Successfully able to select " + actualViews + "option from dashboard" +ReportName+  "summary screen");
        Add_Log.info(
                "Successfully able to select " + actualViews + "option from dashboard" +ReportName+  "summary screen");
    } else {
        Assert.fail();
        Reporter.log("Not able to select " + actualViews + "option from dashboard" +ReportName+  "summary screen");
        Add_Log.info("Not able to select " + actualViews + "option from dashboard" +ReportName+  "summary screen");
    }

1 Ответ

0 голосов
/ 20 февраля 2019

Попробуйте код ниже:

//try 1 
String selectedText = driver.findElement(By.cssSelector("li.x-boundlist-selected")).getText();
System.out.println(selectedText)

//try 2
selectedText = driver.findElement(By.cssSelector("li.x-boundlist-selected")).getAttribute("textContent");
System.out.println(selectedText)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...