【发布时间】:2017-01-06 18:02:44
【问题描述】:
Firebug 为我要填写的元素 inputfiled 提供了这个:
<label for="form:composite:tabView:ssn">Fødselsnummer</label>
在我的 selenium 脚本中试过这个:
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"});
【问题讨论】:
-
为什么使用标签作为输入?那很可能是你的问题。您应该始终尝试为手头的任务使用有效的 HTML 元素,即
<input/> -
您也尝试通过 id
@id='form:composite:tabView:ssn进行选择,但该标签没有 id,它具有for属性? -
显示输入元素的
HTML。Label只是输入字段的某种名称 -
那么你将如何编写代码 WebElement velger = driver.findElement(By.xpath("//input[@id='form:composite:tabView:ssn']"));给出你的意见?
-
萤火虫输出: