ber*_*ami 4 jsf-2 selenium-webdriver
当我使用JSF2.0生成SelectOneMenu时,我在xhtml中指定的id附加到JSF生成的ID.
例如,my_fancy_id
它产生j_idt9:my_fancy_id
现在我想用Selenium 2 Web Driver测试我的页面.我尝试重新找到我的选择菜单:
driver.findElement(By.id("my_fancy_id"));
Run Code Online (Sandbox Code Playgroud)
当然它找不到任何东西因为id被改变了.找到页面上的选择菜单的最佳方法是什么?
通常,表单的id前置于表单内的所有元素ID.如果您没有设置表单ID,JSF会为您执行此操作('j_idt9').解决方案:为表单分配一个id,并尝试在findElement
方法中使用完整的id ,例如:
<h:form id="myForm">
...
</h:form>
Run Code Online (Sandbox Code Playgroud)
这样称呼它:
driver.findElement(By.id("myForm:my_fancy_id"));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3383 次 |
最近记录: |