我的 JavaScript 行:
$('#name').show();
我的 webdriver 代码行:
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("name"))).sendKeys("Some Name");
当我运行测试时,它将引发以下异常:
WebDriverException: unknown error: cannot focus element
因此,我一直在寻找解决方案。铬Google代码网站中报告了一些问题。有关使用,有很多建议JavaScriptExecutor。但这对我来说似乎不是更好的解决方案,因为它可以使浏览器依赖代码。
JavaScriptExecutor
几个小时后,我终于找到了使用不带JavascriptExecuter的操作的解决方案:
Actions actions = new Actions(driver); actions.moveToElement(website); actions.click(); actions.sendKeys("Some Name"); actions.build().perform();
好吧,它为我工作。但是,这样是否是更好的解决方案?