Selenium - driver.findElement(By.cssSelector(..))无法在Windows 10中运行

时间:2016-10-16 16:36:45

标签: java selenium selenium-webdriver css-selectors

<{1}}中的

css selectore无法使用Selenium,标记是正确的,不确定可以请求帮助

windows 10

例外: -

  

线程“main”中的异常org.openqa.selenium.InvalidElementStateException:无效的元素状态:无法在'Document'上执行'querySelector':'input [id ='login-username']]'不是有效的选择器

1 个答案:

答案 0 :(得分:2)

  

线程中的异常&#34; main&#34; org.openqa.selenium.InvalidElementStateException:无效的元素状态:无法执行&#39; querySelector&#39;在&#39;文档&#39;:&#39;输入[id =&#39; login-username&#39;]]&#39;不是有效的选择器

错误是完全正确的,因为您的cssSelector不正确,只需省略最后]方括号,这是额外的,请尝试如下: -

driver.findElement(By.cssSelector("input[id='login-username']")).sendKeys("asdfasd");

您还可以使用#id css selecter使用id找到具有cssSelector属性值的元素,如下所示: -

driver.findElement(By.cssSelector("input#login-username")).sendKeys("asdfasd");

To learn more about css selector follow this reference

Selenium也可以直接使用元素的id属性值找到元素,因此您可以使用By.id()以及以下内容找到此元素: -

driver.findElement(By.id("login-username")).sendKeys("asdfasd");