无法单击表格单元格中显示为2行的链接

时间:2014-06-30 09:32:52

标签: c# selenium selenium-webdriver nunit

我使用NUnit Framework和C#自动化应用程序。 使用下面的代码,我能够找到&单击单行显示的元素整个链接文本(例如:abcd)。但如果它显示在2行(例如:abcd \ nxyz)

,我无法点击该链接

//搜索&点击名称链接

Image of the control

IWebElement table1 = driver.FindElement(By.XPath("//*[@id='tblSearchAudienceResults']/tbody")); 
IList<IWebElement> rowCollection = table1.FindElements(By.TagName("tr"));

foreach (IWebElement row in rowCollection)
{
    IList<IWebElement> colItem = row.FindElements(By.TagName("td"));
    Console.WriteLine("TA Name: " +colItem[1].Text);

    if (colItem[1].Text.Equals(audienceName))
    {
         Console.WriteLine("Inside If");
         colItem[1].Click();
         Console.WriteLine("Clicked on Link");
         break;
    }                            
}

1 个答案:

答案 0 :(得分:-1)

尝试点击锚元素而不是td - 例如 -

<table>
<tr>
  <td><a href="reftosomelink">Sample long text which is multiline</a></td>
  <td>Some other label</td> 
  <td>50</td>
</tr>
</table>

在这种情况下尝试 -

row.FindElement(By.xpath("./td[1]/a")).click();

如果这也不起作用,请发布您的HTML和错误。