当前位置: 首页 > 面试题库 >

jquery.show和WebDriverException之后的元素:未知错误:无法聚焦元素

陆弘光
2023-03-14
问题内容

我的 JavaScript 行:

$('#name').show();

我的 webdriver 代码行:

wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("name"))).sendKeys("Some Name");

当我运行测试时,它将引发以下异常:

WebDriverException: unknown error: cannot focus element

因此,我一直在寻找解决方案。铬Google代码网站中报告了一些问题。有关使用,有很多建议JavaScriptExecutor。但这对我来说似乎不是更好的解决方案,因为它可以使浏览器依赖代码。


问题答案:

几个小时后,我终于找到了使用不带JavascriptExecuter的操作的解决方案:

Actions actions = new Actions(driver);
actions.moveToElement(website);
actions.click();
actions.sendKeys("Some Name");
actions.build().perform();

好吧,它为我工作。但是,这样是否是更好的解决方案?



 类似资料:
  • 我一直试图使用Selenium sendkeys(),但没有成功使用Chrome。我在这里研究过类似的问题,但似乎没有成功。我可以生成URL,调用按钮(click()),但是当我试图在特定的文本字段中输入值时,我会得到: 线程“main”org.openqa.selenium.WebDriverException中出现异常:未知错误:无法聚焦元素。

  • 使用WebDriver在Chrome上执行操作 我有一个扩展名为.xqy的网页。在这里我执行一些操作并打开第一个帧。然后,在第一帧上做了一些动作之后,我打开第二帧,然后是第三帧。现在,我需要在第一帧上执行一些操作,因此我关闭Selenium当前焦点所在的第三帧,然后使用以下代码关闭第二帧: 对决议有什么想法吗?也尝试过使用Actions类,但没有用。

  • 问题内容: 是否可以使用该方法将div(或其他任何元素)聚焦? 我已经将tabIndex设置为div元素: 当我单击它时,我可以看到它被聚焦,但是,我试图动态地聚焦这样的元素: 或像这样: 但是触发事件时,组件不会获得焦点。我怎样才能做到这一点?我还有其他(非输入)元素可以使用吗? 编辑: 好吧,看来这实际上是有可能做到的:https : //jsfiddle.net/69z2wepo/54201

  • 我正在网站上搜寻机票信息。 url='https://www.vividseats.com/nhl-hockey/los-angeles-kings-tickets/kings-vs-canucks-2-14-2751065.html' 我正在使用Selenium和Python。我可以使用ChromeWebDriver进入页面,然后单击弹出窗口。我试着把左边的票证信息刮到下面 通过使用

  • 环境Chrome:版本39.0.2171.95 Chrome Driver:2.13(最新)Selenium WebDriver

  • 问题内容: 我想单击一个单选按钮,出现在网页上。代码如下: HTML代码: Tesstcase: 此测试通过错误: 1)量角器演示应用检查项目数 信息: 失败:元素不可见 我也尝试过: 它给出了错误: [16:16:26] E / launcher-参数列表后出现错误:SyntaxError:缺少) 请提出建议,单选按钮将如何获得点击? 问题答案: 在使用硒进行测试自动化中,这是一个相当普遍的问题