Hi Community,
I’m new to Appium & trying automate some test cases via emulator & simulators, I have maven,testng,Allure,Appium & java. Running parallel tests for android & iOS.
In each test class I’m creating a driver instance in @BeforeMethod like:
private AndroidDriver driver = null;
public void SpinUpAndroidDriver(){
try {
url = new URL("http://0.0.0.0:4723/wd/hub");
setupDeviceCapabilities();
driver = new AndroidDriver(url, caps);
} catch (MalformedURLException e) {
throw new RuntimeException(e);
}
public void setupDeviceCapabilities(){
caps.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
caps.setCapability(MobileCapabilityType.DEVICE_NAME, "Pixel3");
caps.setCapability(MobileCapabilityType.AUTOMATION_NAME, "UIAutomator2");
caps.setCapability(MobileCapabilityType.UDID, "emulator-5554");
caps.setCapability(MobileCapabilityType.APP, AppUrl);
caps.setCapability(MobileCapabilityType.FULL_RESET, "false");
caps.setCapability("appWaitActivity", "*");
caps.setCapability("appPackage","");
}
@AfterMethod
public void StopAndroidDriver() {
driver.quit();
}
& similarly for iOS tests in each test classes creating driver instance like this.
What I want to Achieve
I want to have a base class where I can initiate these driver instances both for android & ios so test classes can call these, looking for some hints/directions/examples to create base class also I hope this will work for parallel execution of tests.
thanks for your support already