Java 无法在Selenium测试中检索文本框值
我不熟悉Selenium测试,我正试图在xpath、name和id的帮助下将值放入文本框中(java使用EclipseIDE):Java 无法在Selenium测试中检索文本框值,java,selenium-webdriver,Java,Selenium Webdriver,我不熟悉Selenium测试,我正试图在xpath、name和id的帮助下将值放入文本框中(java使用EclipseIDE): 运行时,textbox不会从上述代码中检索。有人能帮我解决这个问题吗?使用By.id代替By.xpath 如果你坚持,那么: 改为以://开头// 确保id值在第页上是唯一的 如果在某些浏览器中使用xpath,id或id会有所不同。By 在文本框中,它正在获取值,但无法存储 在文本框字段中 你是说你可以看到selenium在文本框中输入这些值,然后这些值就消失了 如果
运行时,textbox不会从上述代码中检索。有人能帮我解决这个问题吗?使用By.id代替By.xpath 如果你坚持,那么: 改为以://开头// 确保id值在第页上是唯一的 如果在某些浏览器中使用xpath,id或id会有所不同。By 在文本框中,它正在获取值,但无法存储 在文本框字段中 你是说你可以看到selenium在文本框中输入这些值,然后这些值就消失了
如果是这样,那么当selenium在文本框中输入值时,页面上可能有一些javascript正在运行。您可以尝试在selenium输入值之前等待。如果等待解决了这个问题,那么您需要编写一个方法来检测javascript何时完成。如果没有HTML,很难说清楚,但我建议做几件事:
支持您的问题的HTML将非常有用。您是否收到任何异常?没有异常,在文本框中它正在获取值,但无法存储在文本框字段中。@PiotrBoho运行它正在检索的项目时,我没有收到任何错误,但它没有将值存储在文本框中。因为它是必填字段,所以显示验证错误。请在调试模式下的sendKeys()行运行测试中放置断点。当到达断点时,在浏览器中手动输入相同的字符串。并继续运行测试。然后告诉我结果谢谢你。但是我试过使用Id,也试过使用By.name,除了两个文本框外,其余字段都正常工作。
driver.findElement(By.xpath(".//* [@id='txtEmpDepAddressLine1']")).sendKeys("2nd Main")
driver.findElement(By.xpath(".//*[@id='txtEmpDepAddressLine2']")).sendKeys("Bangalore");