【问题标题】:ng model GetText() method issue Selenium WebDriver with Javang model GetText() 方法问题 Selenium WebDriver with Java
【发布时间】:2017-03-13 08:58:46
【问题描述】:

行动: 使用 GetText() 方法和 Selenium webdriver 从文本框中获取值

HTML代码

<input class="form-control ng-pristine ng-valid dirty ng-touched" type="text" placeholder="Search Query" my-enter="SaveBind('Search');" ng-model="Query.SearchTerm" name="headerSearch">

上面一个是带有文本控件的输入类型,所以我想从文本框中提取值

我的 Xpath:

@FindBy(how = How.XPATH, using = "//input[@ng-model='Query.SearchTerm']")
public WebElement searchQuery;

如果我使用 getText 方法,我会得到空值

String query = searchQuery.getText();

但是当我们通过发送键传递值时,它可以正常工作并将输入的值粘贴到控件中

searchQuery.sendKeys("Welcome");

我的疑问: 输入的值未显示在 HTML 标记中?那么如何从文本框中提取值? 是否可以自动化 Angular Js?

附上截图

【问题讨论】:

    标签: javascript java selenium selenium-webdriver xpath


    【解决方案1】:

    不,输入的值不会显示在 html 中。要获取输入的值,您需要使用getAttribute() 方法

    String query = searchQuery.getAttribute("value");
    

    【讨论】:

    • 我已经尝试过使用 webelement 方法 .getAttribute("value") 和使用 javascriptexecutor 的两种方式,但它返回 null。 (文本在页面上可见,但在 html 中不作为值或任何属性)我的应用程序是 angular js。任何人都知道如何获取该文本。
    • @AmitRajput 请用相关代码和html发布新问题。
    猜你喜欢
    • 2011-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-23
    • 1970-01-01
    • 1970-01-01
    • 2016-06-08
    相关资源
    最近更新 更多