1

我正在使用 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(); 
}
4

2 回答 2

1

您可以尝试查找要迭代的元素列表。

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

于 2012-12-21T07:57:06.357 回答
0

我不确定这种语法是否正确,但这又如何呢?

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

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

于 2012-12-20T16:56:08.477 回答