首页 > 解决方案 > Selenium sendKeys 未停留在预期元素中

问题描述

我正在尝试使用 Selenium 的 sendKeys 将 xml 有效负载作为字符串添加到网站上的文本字段中。我的问题是在我的所有 xml 字符串都输入到文本字段之前,我的代码正在进入下一行。这就是我当前的测试的样子;

    @FindBy(id = "macro-param-graph")
    private WebElement graphIdXml;

    public void invokeGraphXmlPayload(String payload) throws IOException, InterruptedException {
      String myGraph = generateStringFromResource("src/test/resources/testDataResources/" + payload);

      WebDriverWait wait = new WebDriverWait(driver, 15);
      wait.until(ExpectedConditions.visibilityOf(graphIdXml));
      graphIdXml.sendKeys(myGraph);
      btn_Preview.click();
}

我尝试了一些简单的事情,比如尝试 Thread.sleep 只是为了看看是否有帮助,但是看到在 Selenium 已经完成 sendKeys 功能之后发生这种情况并没有太大帮助。

我本身没有收到错误消息,只是其余的测试在 xml 字符串仍在发送时继续运行,所以它只是在弄乱的同时继续运行。

对此的任何帮助或建议将不胜感激。

标签: javaseleniumselenium-webdriverautomated-tests

解决方案


删除我正在转换为字符串的 xml 文件的 xml 格式已经解决了这个问题。

我认为这是在文件具有默认 xml 格式时在字符串中输入返回的情况。上面问题中的代码现在无需任何编辑即可工作。


推荐阅读