C# 循环浏览列表以选择Selenium中的元素

C# 循环浏览列表以选择Selenium中的元素,c#,selenium,selenium-webdriver,webdriver,C#,Selenium,Selenium Webdriver,Webdriver,我正在尝试为我正在测试的网站标题中的链接编写一个页面类。我有下面的链接结构 <ul> <li><a href="/" title="Home">Home</a></li> <li><a href="/AboutUs" title="About Us">About Us</a> </li> <li><a href="/Account" title=

我正在尝试为我正在测试的网站标题中的链接编写一个页面类。我有下面的链接结构

<ul>

    <li><a href="/" title="Home">Home</a></li>
    <li><a href="/AboutUs" title="About Us">About Us</a> </li>
    <li><a href="/Account" title="Account">Account</a></li>
    <li><a href="/Account/Orders" title="Orders">Orders</a></li>
    <li><a href="/AdministrationPortal" title="Administration Portal">Administration Portal</a></li>
</ul>
我使用的是C#,WebDriver正试图编写此代码

任何帮助都会很好

谢谢


Chris

您可以有一个方法,该方法知道列表的根(ul元素),并将标题(字符串或枚举)作为参数

类似(在伪java代码中):


与存储到java列表相比,我更喜欢这个解决方案。
        List<IWebElement> headerElements = new List<IWebElement>();
        headerElements.Add(WebDriver.FindElement(By.LinkText("Home")));
        headerElements.Add(WebDriver.FindElement(By.LinkText("About Us")));
        headerElements.Add(WebDriver.FindElement(By.LinkText("Account")));
        headerElements.Add(WebDriver.FindElement(By.LinkText("Orders")));
        headerElements.Add(WebDriver.FindElement(By.LinkText("Administration Portal")));
        headerElements.Add(WebDriver.FindElement(By.LinkText("Log in / Register")));
        headerElements.Add(WebDriver.FindElement(By.LinkText("Log off")));
  public void SelectCreateNewReferralLink()
    {
        var selectAboutUsLink = ( new WebDriverWait(WebDriver, new TimeSpan(50))).Until
            (ExpectedConditions.ElementExists(By.CssSelector("#main > a:nth-of-type(1)")));
        selectCreateNewReferralLink.Click();
    }
selectLink(String title) {
    driver.findElement(By.cssSelector("ul li a[title='" + title + "']").click();
}