我正在尝试选择没有唯一ID或类的页面元素。在this页面上将它设为radiobutton。当我尝试使用名称来查找radiobutton
时var radioButton = driver.FindElements(By.Name("gender"))[1];
radioButton.Click();
Visual Studio返回“mscorlib.dll中发生了”System.ArgumentOutOfRangeException类型的未处理异常“。
添加了超时以确保页面已完全加载。但那不是解决方案。
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10));
我试图避免使用XPath,但这也不起作用another exception occurred
var radioButton = driver.FindElement(By.XPath("/html/body/form/input[2]"));
radioButton.Click();
所以我想弄清楚:
任何帮助都非常感激。
答案 0 :(得分:0)
只要页面中没有带有相同值的单选按钮,就可以使用input[value='male']
之类的CSS选择器。
答案 1 :(得分:0)
问题是由iframe引起的。添加此代码以便能够选择其中的元素。如果相应的iframe中没有名称,请see this discussion
driver.SwitchTo().Frame(FrameName);