我尝试在页面中找到一个文本框来发送值,但WebDriver无法找到它。 我试图找到使用id,name,xpath但没有工作
这是一段代码
<dl class="user-info-fields">
<dd>
<input id="user_cpf" type="text" size="30" name="user[cpf]">
</dd>
</dl>
我试图在DL标签中找到很多信息,但WebDriver从未找到它。
WebDriver API在处理DL下的元素或我做错了什么时有一些限制吗?
答案 0 :(得分:0)
我不知道你已经尝试了什么,因为你没有提供任何代码。但你是否尝试通过ID找到它?
在C#中,这看起来像是:
IWebElement element = webDriver.FindElement(By.Id("user_cpf"));
同样,如果页面尚未加载,上述方法也可能失败。 WebDriver有许多内置的方法来提供等待(http://seleniumhq.org/docs/04_webdriver_advanced.jsp)。
测试这个的最简单方法是在你试图找到元素之前做一个简单的Thread.Sleep(5000)*。
* 在生产代码中,尽量避免硬编码等待。