Selenium C#,找不到表格单元格点击链接

时间:2016-08-26 14:40:05

标签: c# selenium visual-studio-2012

我试图点击表格中的可点击单元格(单元格有链接),但我甚至无法通过测试自行查找单元格。我可以让iFrame激活,但找不到单元格,即我使用。导航到框架。

IWebElement objecElement = driver.FindElement(By.XPath("//*[@id='AreaID2_iframe']"));
driver.SwitchTo().Frame(objecElement);

但接下来找不到表格单元格

driver.FindElement(By.XPath("//*[@id='lwDataGrid_r_0_c_5']"));

下表中的表格格式如下: -

https

任何帮助都非常感激。

此致

2 个答案:

答案 0 :(得分:0)

尝试使用适当的选择器,即

IWebElement objecElement = driver.FindElement(By.Id("AreaID2_iframe"));
driver.SwitchTo().Frame(objecElement);

var tableRow = driver.FindElements(By.Id("lwDataGrid_r_0_c_5"));

tableRow之后设置一个断点并查看它是否找到了元素?

答案 1 :(得分:0)

我认为这是时间问题,您应该尝试使用WebDriverWait等待表格加载并且欲望元素可见如下: -

IWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(30));
wait.Until(ExpectedConditions.FrameToBeAvailableAndSwitchToIt("AreaID2_iframe"));

IWebElement row = wait.Until(ExpectedConditions.ElementIsVisible(By.Id("lwDataGrid_r_0_c_5")));