Thanks @bhaskar
Following is my xml: - for running only one test in both the devices::
<?xml version="1.0" encoding="UTF-8"?>
Script:
public class appGRID {
WebDriver driver = null;
WebDriver driver1 = null;
WebDriver driver2 = null;
WebDriver driver3 = null;
DesiredCapabilities capabilities = new DesiredCapabilities();
@Parameters(value={"device_id1","device_id2","ApplicationPath"})
@BeforeTest
public void atStart(@Optional("nnn")String device_id1,String device_id2,String ApplicationPath) throws MalformedURLException, InterruptedException
{
capabilities=DesiredCapabilities.android();
capabilities.setCapability("automationName", "Appium");
capabilities.setCapability(CapabilityType.PLATFORM,"ANDROID");
capabilities.setCapability("app", ApplicationPath);
capabilities.setCapability("appPackage", "packg"); //Replace with your app's package
capabilities.setCapability("appActivity", "app.ui.SplashActivity"); //Replace with app's Activity
//setting new command timeout for selenium server
capabilities.setCapability("newCommandTimeout", "2000000");//33.33 mins
if ("3204da2a5075c0b5".equalsIgnoreCase(device_id1))
{
System.out.println("in Samsung galaxy: "+device_id1);
//
capabilities.setCapability("deviceName", device_id1);
capabilities.setCapability("udid", device_id1);
capabilities.setCapability(CapabilityType.BROWSER_NAME,"android");
capabilities.setCapability("platformVersion", "4.4.2");//Or//capabilities.setCapability(CapabilityType.VERSION, "4.1.2");
//capabilities.setCapability("applicationName",device_id1);
try
{
driver = new AndroidDriver(new URL("http://xxxx:5566/wd/hub"), capabilities);
}
catch (Exception e)
{
e.printStackTrace();
}
}
if("4d00c71c781e50eb".equalsIgnoreCase(device_id2))
{
System.out.println("in nexus: "+device_id2);
//
capabilities.setCapability("deviceName",device_id2);
capabilities.setCapability("udid",device_id2);
//capabilities.setCapability("applicationName",device_id2);
capabilities.setCapability(CapabilityType.BROWSER_NAME,"chrome");
capabilities.setCapability("platformVersion", "4.4");//Or//capabilities.setCapability(CapabilityType.VERSION, "4.1.2");
try
{
driver = new AndroidDriver(new URL("http://xxxx:5577/wd/hub"), capabilities);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
@Test
public void testCase() throws InterruptedException
{
for (int i=0;i<=2;)
{
if(i==0)
driver=driver1;
else (i==1)
driver=driver2;
((AppiumDriver)driver).findElementByName("Create Account / Sign In").click();
((AppiumDriver)driver).findElementByName("I already have an account").click();
((AppiumDriver)driver).findElementById(packg:id/email").sendKeys("yahoo@yopmail.com");
((AppiumDriver)driver).findElementById("packg:id/password").sendKeys("12345678");
((AppiumDriver)driver).findElementById("packg:id/login").click();
((AppiumDriver)driver).findElementByName("Continue free trial").click();
i++;
}
}
I think I need to update the script only, but dont know how!!
Can you please guide?
Thanks in advance ! 