java - 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 字符串仍在发送时继续运行,所以它只是在弄乱的同时继续运行。
对此的任何帮助或建议将不胜感激。
解决方案
删除我正在转换为字符串的 xml 文件的 xml 格式已经解决了这个问题。
我认为这是在文件具有默认 xml 格式时在字符串中输入返回的情况。上面问题中的代码现在无需任何编辑即可工作。
推荐阅读
- timer - Swiftui - 定时器在一段时间内漂移
- java - 用于高级修剪字符串的 Java 程序
- javascript - 有没有办法让纯 React App(没有破折号)使用 plotly.js 制作一个带有两个下拉列表的图表,这样两者都会影响显示的图表?
- json - 如何配置 kafka 反序列化器,以便它只传递带有值的键?
- html - 从 vs 代码运行 html 文件不包括驱动器路径
- php - 在 iFrame 上使用时会话无法在第三方网站上运行?
- flutter - Flutter - 当 ViewModel 对 Model 的属性进行更改时如何更新所有 ViewModel 中的更改
- swift - 为什么当我更改我的 SKNode 的锚点时我的 SKPhysicsBody 没有调整?
- node.js - Mongoose-对数据库中的所有条目运行一个函数
- elasticsearch - 如何从我的仪表板(左上角)和登录屏幕替换 Elastic 徽标?