JAVA:我们如何在控制台中打印参数值?

时间:2014-11-11 09:15:37

标签: java selenium-webdriver

Class1:具有这样的可重用函数 -

public class Class1 {
    WebDriverWait wdw = new WebDriverWait(driver, 10);
    public WebElement getElement(WebElement element) {
        wdw.until(ExpectedConditions.elementToBeClickable(element));
    }
}

等级2:

public class Class2 {

    public static void main(String[] args) {
        ge.getElement(login_button).click();
    }

}

现在,如果页面上没有该元素或超时等,我怎样才能在控制台中打印“login_button”(带有更多信息)

我试过了: 的Class1:

public class GetElement {

    WebDriverWait wdw = new WebDriverWait(driver, 10);

    public WebElement getElement(WebElement element) {
        try {

            return wdw.until(ExpectedConditions.elementToBeClickable(element));
        } catch (Exception e) {

            System.err.println(element);
        }

        return null;
    }

}

但是打印此元素会在控制台中显示:

Proxy element for: org.openqa.selenium.support.pagefactory.DefaultElementLocator@57250572而不是

login_button

1 个答案:

答案 0 :(得分:0)

您有 WebElement &想要打印它的名称,那么你可以使用 WebElement 界面的 getText()方法。看看这个WebElement - java.lang.String getText()

public class GetElement {

    WebDriverWait wdw = new WebDriverWait(driver, 10);

        public WebElement getElement(WebElement element) {
            try {
                return wdw.until(ExpectedConditions.elementToBeClickable(element));
            } catch (Exception e) {
                System.err.println(element.getText());
            }
        return null;
    }
}