2015-06-19 59 views
0

我是用C#編寫硒的初學者。當我嘗試下面的代碼時,它拋出異常:指數超出範圍。 r n參數名稱:index

指數超出範圍。必須是非負數且小於集合的大小。

參數名:指數

請幫我在這

class Program { static void Main(string[] args) 
{ 

    IWebDriver driver = new ChromeDriver(); 
    driver.Url = @"file:///C:/users/user/documents/visual%20studio%202012/Projects/LearnSelenium_Xpath/LearnSelenium_Xpath/TestPage.html"; 
    var radiobutton = driver.FindElements(By.Name("Color"))[0]; -->Exception 
    radiobutton.Click(); 
} 
+1

您沒有通過查找獲取元素,首先檢查訪問索引之前的長度/計數 – Adil

回答

0

.FindElements似乎沒有找到任何元素,導致[0]失敗。

在訪問它之前,您應該檢查driver.FindElements(By.Name("Color"))的結果。

0

看來你不能確定會發現一個單選按鈕,或者發生了一個長度錯誤,並且優雅地通知用戶的檢查是按順序進行的。

class Program { static void Main(string[] args) 
{ 

    IWebDriver driver = new ChromeDriver(); 
    driver.Url = @"file:///C:/users/user/documents/visual%20studio%202012/Projects/LearnSelenium_Xpath/LearnSelenium_Xpath/TestPage.html"; 
    try 
    { 
     var radiobutton = driver.FindElements(By.Name("Color"))[0]; -->Exception 
     radiobutton.Click(); 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show(ex.Message(), "Radio button error"); 
    } 
} 
相關問題