java - Selenium sendKeys 未停留在预期元素中

标签 java selenium selenium-webdriver automated-tests

我正在尝试使用 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 字符串仍在发送时继续运行,因此它只是在继续进行,同时造成困惑。

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

最佳答案

删除我要转换为字符串的 xml 文件的 xml 格式已解决此问题。

我认为这是当文件具有默认 xml 格式时在字符串中输入 return 的情况。上述问题中的代码现在无需任何编辑即可运行。

关于java - Selenium sendKeys 未停留在预期元素中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59252871/

相关文章:

java - 长轮询 10 秒后 Tomcat 7 服务器错误

java - 我如何更改我的代码,以便如果有第二个输入,它将添加到我的直方图上?

java - 在 Function<T,R> 中格式化日期

java - 几个测试类后关闭浏览器

java - 仅在 Chrome 浏览器中无法在 Iframe 标记下找到元素 (html)

java - 使用 Google 发布 API 上传 AAB 文件时出现 SocketTimeoutException

python - 从 python selenium 脚本打开私有(private)浏览器时如何禁用 "Insecure Connection"?

java - 如何使用线程在不同系统中运行同一个java项目

java - 在 Selenium GhostDriver 中使用 JavascriptExecutor 处理警报/确认

php - 如何使用 phpunit_selenium2 扩展执行双击?