【问题标题】:Holding IWebElements as a collection in C#/Selenium when using [FindsBy] attribute使用 [FindsBy] 属性时,将 IWebElements 作为 C#/Selenium 中的集合
【发布时间】:2013-04-11 06:32:27
【问题描述】:

我正在尝试使用 OpenQA.Selenium.Support.PageObjects 中包含的 [FindsBy] 属性将多个 IWebElements 设置为一个集合,如下所示。假设我想在实例变量“MyElements”中保存所有“li”元素。

HTML

<ul class="elements">
  <li>e1</li>
  <li>e2</li>
  <li>e3</li>
</ul>

C#

class TopPage {

  [FindsBy(How = How.CssSelector, Using = "ul.elements li")]
  public IWebElement[] MyElements;

}

我怎样才能做到这一点?

【问题讨论】:

  • 现在怎么不行?

标签: c# selenium webdriver selenium-webdriver pageobjects


【解决方案1】:

抱歉各位,已解决:

class TopPage {
    TopPage(IWebDriver driver) {
        PageFactory.InitElements(driver, this);
    }
    [FindsBy(How = How.CssSelector, Using = "ul.elements li")]
    public IList<IWebElement> MyElements;
}

使用IList,而不是Array。谢谢!

【讨论】:

  • 接受您自己问题的答案,下次告诉我们如何它不起作用,谢谢!
  • 我知道,但他们说“您可以在 1 天内接受自己的答案”,我稍后再做。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-03
  • 2010-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-14
相关资源
最近更新 更多