2017-03-13 55 views
1

我試圖選擇沒有唯一ID或類的頁面元素。讓它成爲this頁面上的單選按鈕。當我嘗試使用名稱找到單選按鈕如何使用Selenium WebDriver(在iframe中)選擇不獨特的元素?

var radioButton = driver.FindElements(By.Name("gender"))[1]; 
radioButton.Click(); 

的Visual Studio返回我「型System.ArgumentOutOfRangeException的」未處理的異常出現在mscorlib.dll」。

已添加超時以確保頁面已完全加載。但那不是解決方案。

driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10)); 

我試圖避免的XPath使用,但沒有工作,要麼和another exception occurred

var radioButton = driver.FindElement(By.XPath("/html/body/form/input[2]")); 
radioButton.Click(); 

所以我想弄清楚:

  1. 什麼是正確的方法在這種情況下選擇單選按鈕?
  2. 如何擺脫OutOfRange異常?
  3. 爲什麼XPath在這種情況下不起作用?

任何幫助非常感謝。

+3

假設HTML樣品沒有名字沒有在所有的HTML,檢查是否是內部''