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條經驗 獲得超4個贊
Serenity PageObject類提供了一個內置的getDriver()方法,您可以在任何想要初始化驅動程序的地方調用該方法(最好在測試類中)。避免嘗試在任何步驟定義/步驟庫中初始化驅動程序(使用 @Managed 注釋進行管理),否則它將拋出:
空指針異常。
添加回答
舉報