在Selenium PageObjects中,我没有实例化任何Web驱动程序实例和编码,如下所示
@FindBy(id = "userID")
WebElementFacade txtusername;
我正在尝试将下面的代码实现到Selenium页面对象函数中。
Actions action = new Actions(driver);
WebElement mainMenu = driver.findElement(By.linkText("MainMenu"));
action.moveToElement(mainMenu).moveToElement(driver.findElement(By.xpath("submenuxpath"))).click().build().perform();
有人可以建议我在使用Page对象模型时如何在上面的代码中使用webdriver实例?
答案 0 :(得分:0)
您可以将<div id="div1"></div>
<div id="spinnerDiv" style="display:none"></div>
<div id="div2" style="display:none"></div>
实例保留在所有页面对象继承的父类中。
button click function(){
$("#div1").hide();
$("#spinnerDiv").show().delay(3000).queue(function () {
$(this).hide();
$("#div2").show();
});
}
答案 1 :(得分:0)
有两种方法。
第一种方式:您可以在创建并使用它的类中为您的webdriver实例创建getter。
第二种方式:您可以继承创建webdriver实例的类,然后再使用驱动程序。
至于我,我创建了一个基类,我的webdriver被初始化,并且放置了最有用的方法(比如等待元素,导航到页面等)。继承这个类允许我的所有页面对象都有一堆非常有用的功能。如果需要,我的每个PageObject都使用基类的webdriver实例。