我只是刚刚发现了'发现''在页面模型中,我试图让它适用于页面。我很难获得使用' FindsBy'来获得的价值。分配给变量I' m创建。
using OpenQA.Selenium;
using OpenQA.Selenium.Support.PageObjects;
[FindsBy(How = How.Id, Using = "viewMenu")]
private IWebElement ViewMenuLink;
//define functions to click elements on the page
public void ClickViewMenu()
{ ViewMenuLink.Click(); }
我看到一个错误,指出从未分配ViewMenuLink字段,并且其默认值始终为null。我错过了一些明显的东西吗?我对'FindsBy'的理解用法是将其值分配给' ViewMenuLink'。在任何提示之前都要感谢!
答案 0 :(得分:1)
通常的模式是使用PageFactory.InitElements来初始化用FindsBy标记的所有变量 - 这通常放在构造函数中:
public MyPage(IWebDriver d)
{
this.driver = d;
PageFactory.InitElements(d, this);
}