2013-05-17 70 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