0

即使我的元素已经被点击并且我被导航到下一页,我也会遇到异常。

原因:org.openqa.selenium.TimeoutException:预期条件失败:等待元素被点击:[[ChromeDriver: chrome on XP (56f040029c23126b0087ff1dfa82369e)] -> xpath: //*[@id='login']/app -root/app-caf-login/div/div/div[2]/form/div[3]/div/div/button](尝试 10 秒,间隔 500 毫秒)

验证 XPath 但由于元素已被单击,他们不确定为什么会出现错误。

说明:点击登录按钮

 action: org.getopentest.selenium.Click
        args:
          locator: { xpath: "//*[@id='login']/app-root/app-caf-login/div/div/div[2]/form/div[3]/div/div/button" }

说明:暂停 60 秒

action: org.getopentest.selenium.ActionsPause
        args:
          durationMs: "60000"

预期:不应该有错误

4

1 回答 1

0

本答案中所述,请确保不要将sendEnter: true参数与任何 SendKeys 操作一起使用。当您通过sendEnter: true时,该操作将在将键发送到文本框元素后“按下”回车键。所以基本上,在你展示的测试中,第一个动作将输入用户名然后按回车,因此尝试不使用密码登录,这当然会失败。

此外,您错误地使用了 ActionsPause 关键字(更多信息在这里)。如果你想在你的测试中引入延迟,你可以使用$delay() API,但是你很少需要用 OpenTest 来做这件事,因为同步是内置的,这意味着所有的测试动作都会在 UI 上执行一些工作element 知道如何在工作之前等待该元素可用。

于 2019-05-31T19:17:10.627 回答