Selenium Webdriver FindsBy анотация, еквивалентна на driver.FindElements()

Играя си с PageFactory и идентификация на обекти с помощта на атрибути FindsBy. Досега ми харесва, но не мога да намеря анотация FindsBy, еквивалентна на следната, която извлича списък с елементи от таблица.

driver.FindElements(By.CssSelector("#searchtable tr td a"));

Ако опитам това:

[FindsBy(How = How.CssSelector, Using = "#searchtable tr td a")]
public List<IWebElement> searchGridContents;

Получавам грешка "Типът на полето searchGridContents не е IWebElement или IList."

PageFactory.initelements() търси typeof(IList<IWebElement>) или typeof(IWebElement)). Изглежда, че FindElements по-горе връща

System.Collections.ObjectModel.ReadOnlyCollection<OpenQA.Selenium.IWebElement>

Има ли анотация, еквивалентна на тази за PageFactory? Не искам да смесвам подходи за идентифициране на елементи, ако мога да помогна.


person Joel    schedule 06.08.2014    source източник


Отговори (1)


Както често се случва, отговорът се съдържаше във въпроса. Решението беше да го промените от List<> на IList<>

 public IList<IWebElement> searchGridContents;
person Joel    schedule 06.08.2014