user1664899
user1664899

Reputation: 327

Appium : NullPointerException coming

I am trying to run the below code to automate my mobile application and every thing seems OK but I am getting NullPointerException on following line:

driver.findElement(By.id("com.app.aftertax.aftertax:id/Text7"));

Here is my code:

public class Login {
      public static AndroidDriver driver;

     @BeforeTest
       public void setUp() throws Exception {

        File classpathRoot = new File(System.getProperty("user.dir"));

        File app = new File("/Users/hanan/Downloads/app-at.apk");
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("deviceName", "Android Emulator");
        capabilities.setCapability("platformName","Android");
        capabilities.setCapability("platformVersion","4.4");
        capabilities.setCapability("app-package", "com.mobikwik_new");
        capabilities.setCapability("app-activity", ".MobikwikMain");
        capabilities.setCapability("app-wait-activity",   
        ".MobikwikMain");
        capabilities.setCapability("appiumVersion", "1.3.7");
        //capabilities.setCapability("name", methodName.getName());
        capabilities.setCapability("app", app.getAbsolutePath());
        new AndroidDriver( new URL("http://localhost:4723/wd/hub"),         
        capabilities);


}


      @Test
       public void apiDemo() throws InterruptedException {
       Thread.sleep(10000);
       WebElement login = driver.findElement(By.id("com.app.aftertax.aftertax:id/Text7"));
        login.click(); 

        }




}

Upvotes: 1

Views: 183

Answers (2)

Sadik Ali
Sadik Ali

Reputation: 1195

It seems that you are not assigning Appium object in below code:

new AndroidDriver( new URL("http://localhost:4723/wd/hub"),         
    capabilities);

You should create reference variable of AppiumDriver or AndroidDriver at class level. then assign created object in reference variable like below:

driver = new AndroidDriver( new URL("http://localhost:4723/wd/hub"),         
    capabilities);

Upvotes: 0

Daniel Alder
Daniel Alder

Reputation: 5372

If your code line is the first in the stack trace (you should add the full stacktrace to such questions), then it's the driver variable which is not initialized (==null)

Upvotes: 1

Related Questions