我是 Selenium 和 Arquillian 框架的新手。我正在尝试实现页面对象模型。Webdriver 浏览器功能保存在 arquillian xml 文件中。
我正在使用 TestNG 并创建了以下类:
public class Test{
@Drone
Webdriver driver;
@Page
Login login;
@Page
Home home;
public void createOrderTest(){
login.navigateURL();
login.setcredentials();
home.createOrder();
}
}
public class Login{
// Webelements needed in methods below are declared here
public void navigateURL(){
driver.get("//url/login.aspx");
}
public void setCredentials(){
// code to enter username, password and click login
Graphene.waitAjax().until().element(signIn).is().not().visible();
}
}
public class Home{
// Webelements needed in methods below are declared here
public void createOrder(){
// code to create order
}
}
问题陈述:我不确定如何在代码中的页面Login
之间导航。Home
一旦用户使用Login
页面方法登录,Webdriver如何使用Home
页面方法继续测试?
错误:
navigateURL
使用andsetcredentials
方法测试运行良好。但是,测试无法访问createOrder
方法如下:
WARNING: Argument 1 for UpdateTestResultBeforeAfter.update is null. It won't be invoked.
FAILED CONFIGURATION: @BeforeMethod arquillianBeforeTest(public void Test.createOrder() throws javax.mail.MessagingException,java.io.IOException,java.security.GeneralSecurityException)
org.jboss.arquillian.graphene.enricher.exception.PageObjectInitializationException: Can not instantiate Page Object class Home
请指导我。谢谢你。