我正在尝试使用页面对象模型,但我不确定如何正确初始化元素。
请看我的测试类的一个例子:
public class TestSuiteSubscriber extends TestInitializer {
Menu menuPage = new Menu(driver);
SubscribersSearchForm searchForm = new SubscribersSearchForm(driver);
@Test (priority = 1)
public void findByOldNumber(){
menuPage = PageFactory.initElements(driver, Menu.class);
menuPage.openSubscribers();
searchForm = PageFactory.initElements(driver, SubscribersSearchForm.class);
searchForm.subscriberNumber.sendKeys("100001");
}
如果我在页面类的构造函数中导致 .initElements,我会得到 NullPointerException。据我了解,这是因为它们在页面加载之前已被初始化。是否有适当的方法来避免直接在测试方法中导致 .initElements 方法使测试更具可读性?