已经很晚了,我在这里肯定错过了一些简单的事情,但是我只是想不通。
我正在尝试使用Webdriver自动执行表单的用户输入。问题在于表单是动态的,并且具有许多自定义字段。在这种情况下,我试图将一个简单的字符串发送到窗体上的所有文本输入框。我想我已经走了一半。我能够使用XPath提取所有文本字段并将其放入列表中。但是,我不确定在他们在那里之后如何与他们互动。这是我到目前为止的代码:
List<IWebElement> textfields = new List<IWebElement>();
var test = Driver.FindElements(By.XPath("//*[@type='text']"));
foreach (IWebElement fields in test)
{
textfields.Add(fields);
}
我与WebDriver交互的方式是这样的:
Driver.FindElements(By.XPath(querygoeshere)).SendKeys("test");
。但是,列表中的所有内容都是IWebElement。接下来我该怎么做?我在这里走错了路吗?
最佳答案
我不确定C#语法,但是这样的方法应该会有所帮助:
List<IWebElement> textfields = new List<IWebElement>();
textfields = Driver.FindElements(By.XPath("//*[@type='text']"));
foreach (IWebElement field in textfields){
field.SendKeys("test);
}