2013-05-17 72 views
0

我導出Selenium IDE代碼以便在Selenium Web驅動程序中進行自動化測試。該代碼正確執行,但在單選按鈕上停止並在Selenium Webdriver上產生錯誤。請指導我在webdriver上成功執行單選按鈕。Selenium Webdriver單選按鈕問題

我的代碼是:發現

driver.FindElement(By.Id("ContentPlaceHolder1_ucTriple_rptOffers_AddToCartButton_0")).Click(); 

      System.Threading.Thread.Sleep(20000); 
      driver.FindElement(By.Id("rptShoppingServiceGroup_dlAddons_1_ctl03_0_1_0")).Click(); 
      driver.FindElement(By.Id("rptShoppingServiceGroup_dlAddons_1_ctl03_1_3_1")).Click(); 
      driver.FindElement(By.Id("rptShoppingServiceGroup_dlDevices_1_ctl03_0_1_0")).Click(); 
      driver.FindElement(By.Id("rptShoppingServiceGroup_dlAddons_2_ctl01_2")).Click(); 
      driver.FindElement(By.Id("rptShoppingServiceGroup_dlDevices_2_ctl03_0_2_0")).Click(); 
      driver.FindElement(By.Id("rptShoppingServiceGroup_dlDevices_2_ctl03_0_0_0")).Click(); 
      driver.FindElement(By.Id("SubmitButton")).Click(); 

錯誤是:

Unable to locate element: {"method":"id","selector":"rptShoppingServiceGroup_dlAddons_1_ctl03_0_1_0"} 

如何從中刪除錯誤,併成功地執行它。

+0

單選按鈕是否存在於一個框架內?在導出的腳本中,是否可以看到任何註釋掉的框架語句? – Hemanth

回答

0

看起來頁面中的單選按鈕是動態生成的。然後,有兩種可能的錯誤原因:

  • 當您嘗試單擊它時,收音機不存在。確保您已經執行了使該單選按鈕顯示的前幾個步驟。
  • 生成的單選按鈕具有不同的名稱(名稱中的數字可能會有所不同)。嘗試使用xpath而不是確切的id來選擇它。

我的建議是運行而不選擇指令代碼,並且不退出驅動程序(即不要關閉瀏覽器),所以你可以檢查結果網頁和看,如果顯示的單選按鈕,它的實際名稱是什麼。

+0

非常感謝您的建議 – Alven