I have added following jars in my projects build path:
selenium-server-standalone-2.43.1
and here's my code:
public class SampleApp{
WebDriver dr;
@Test
public void testApp() throws MalformedURLException, InterruptedException {
String apkpath = "D:\\apkdump\\sampleapp.apk";
File app = new File (apkpath);
DesiredCapabilities capabilities= new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME,"");
capabilities.setCapability("deviceName","TestADB18");
capabilities.setCapability("platformName","Android");
capabilities.setCapability("app",app.getAbsolutePath());
capabilities.setCapability("appPackage", "com.test");
capabilities.setCapability("appActivity", "com.sampleapp.Main");
dr = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"),capabilities);
dr.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
}
}
I am getting red line below new AppiumDriver
which says that Cannot instantiate the type AppiumDriver
. Now if remove all selenium jars
the error disappears but then I can't resolve errors with webdriver.
What is the conflict between jars?
I saw similar question here but that could run the code and was getting Null pointer exception
but in my case I cant even run it, it is giving run on saving the code. Secondly the answer has been posted without using AppiumDriver
You don't need to downgrade or anything. There is a design change in the Java Client version 2.0.0 as they mention on their site:
AppiumDriver is now an abstract class, use IOSDriver and AndroidDriver which both extend it.
So, just change your driver line to be:
dr = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),capabilities);
Hope that helps...