使用selenium webdriver C#在搜索结果页面中显示链接/文本

时间:2012-12-20 14:13:17

标签: selenium selenium-webdriver

我正在使用Selenium Webdriver使用C#进行自动化测试。

我将尝试通过一个例子解释我的问题。

我在某些搜索网站中搜索特定字词,例如www.google.com,并获得多页结果。

现在,我试图通过遍历所有搜索结果页来找到搜索结果中特定链接/文本的存在。

希望有人能帮助我解决这个问题。

提前致谢。

修改

以下是我的一些代码:

static void Main(string[] args) { 
     IWebDriver d1 = new FirefoxDriver(); 
     d1.Navigate().GoToUrl("cocodle.com/";); 
     IWebElement e1 = d1.FindElement(By.Name("q")); 
     e1.SendKeys("Selenium"); 
     IWebElement e2 = d1.FindElement(By.Name("sa")); e2.Submit(); 
}

2 个答案:

答案 0 :(得分:1)

您可以尝试定位获取要迭代的元素列表。

ReadOnlyCollection<IwebElement> elements = driver.FindElements(By.tagname("a")); foreach (IWebElement element in elements) { if (element.Text.equals("Searched text")); // Perform Acrion on }

答案 1 :(得分:0)

我不确定这种语法是否正确但是这个呢?

IWebElement e3 = d1.FindElement(By.Link("4")); e3.Click();

再次不确定语法,但我希望你明白这个想法。这是一种非常原始的方法,只有在页面上有一个包含文本“4”的链接时,它才有效。但由于这是一个谷歌搜索结果,它不会很容易自动化。