繁体   English   中英

带有xpath的硒定位元素

[英]selenium locate element with xpath

Firebug为我要输入的元素inputfiled提供了此功能:

<label for="form:composite:tabView:ssn">Fødselsnummer</label>

在我的硒脚本中对此进行了尝试:

 WebElement velger = driver.findElement(By.xpath("//input[@id='form:composite:tabView:ssn']"));

接下来,我这样做:

  velger.sendKeys(new String[]{"27017833176"});

接着:

WebElement sokknapp = driver.findElement(By.xpath("//*[@id=\"form:composite:tabView:searchSSN\"]"));
    sokknapp.click();

单击搜索按钮。

但是,在重播期间查看浏览器时,我可以确定“发送键”不起作用,但单击按钮确实起作用(输入字段显示为红色,因为按下按钮进行搜索时,输入字段中没有内容)。

这有什么问题吗?

velger.sendKeys(new String[]{"27017833176"});

Unable to locate element可能意味着您需要一些时间才能等待handle元素:

var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
var velger = wait.Until(ExpectedConditions.ElementIsVisible(By.Id("form:composite:ta‌​b‌​‌​View:ssn")));

我也不确定velger.sendKeys(new String[]{"27017833176"});正确性velger.sendKeys(new String[]{"27017833176"}); 尝试发送简单的字符串:

velger.sendKeys("27017833176");

问题(或解决方案)是我错过了sendkeys之前的clear()函数。

 velger.clear();
    velger.sendKeys("27017833176");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM