3 回答
TA贡献1865条经验 获得超7个赞
您可以将AppiumDriver定义为静态
public class AppiumHelper(){
public static AppiumDriver<MobileElement> driver;
public void setupDriver(){
//define your DesiredCapabilities
//initialize your driver
}
然后你可以在你的测试方法中使用你的驱动程序,比如
public void test1(){
MobileElement element= AppiumHelper.driver.findElementById("elements id");
}
TA贡献1725条经验 获得超8个赞
您可以在可以完成所有其他配置设置的类中创建一个初始化方法,然后您可以创建该类的一个实例来调用 getDriver 方法。
例如:
public class initialiseDriver{
private static AppiumDriver<MobileElement> driver;
public AppiumDriver<MobileElement> getDriver() throws IOException {
if (PLATFORM_NAME.equals("Android")) {
// setup the android driver
} else if (PLATFORM_NAME.equals("iOS")) {
// setup the ios driver
}
return driver;
}
}
您可以在要使用驱动程序的地方调用此方法。理想情况下,您应该通过在@BeforeSuite/@BeforeClass 方法中调用此方法来初始化驱动程序,这样您就不需要每次启动脚本时都调用此方法,因为它会被@BeforeSuite/@BeforeClass 隐式调用。
TA贡献1783条经验 获得超5个赞
Serenity PageObject类提供了一个内置的getDriver()方法,您可以在任何想要初始化驱动程序的地方调用该方法(最好在测试类中)。避免尝试在任何步骤定义/步骤库中初始化驱动程序(使用 @Managed 注释进行管理),否则它将抛出:
空指针异常。
添加回答
举报
