FAILED: testCal java.lang.NullPointerException at android.Android.testCal(Android.java:41) at

package android;import java.net.MalformedURLException;import java.net.URL;import org.junit.After;import org.junit.Before;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.remote.CapabilityType;import org.openqa.selenium.remote.DesiredCapabilities;import org.openqa.selenium.remote.RemoteWebDriver;import org.testng.annotations.Test;
public class Android { WebDriver driver; @Before public void setUp() throws MalformedURLException{
//Set up desired capabilities and pass the Android app-activity and app-package to Appium
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, “Android”); capabilities.setCapability(CapabilityType.VERSION, “4.4.4”); capabilities.setCapability(CapabilityType.PLATFORM, “Windows”); capabilities.setCapability(“platformName”, “Android”); capabilities.setCapability(“deviceName”, “Android Emulator”); //capabilities.setCapability(CapabilityType) capabilities.setCapability(“appPackage”, “com.android.calculator2”); // This is package name of your app (you can get it from apk info app) capabilities.setCapability(“appActivity”, “com.android.calculator2.Calculator”); // This is Launcher activity of your app (you can get it from apk info app) //Create RemoteWebDriver instance and connect to the Appium server. //It will launch the Calculator App in Android Device using the configurations specified in Desired Capabilities driver = new RemoteWebDriver(new URL(“http://127.0.0.1:4723/wd/hub”), capabilities); } // Here TestNG is used… @Test public void testCalTest(){ //locate the Text on the calculator by using By.name() WebElement two=driver.findElement(By.name(“2”)); two.click(); WebElement five=driver.findElement(By.name(“5”)); five.click(); WebElement divide=driver.findElement(By.name(“divide”)); divide.click(); WebElement five1=driver.findElement(By.name(“5”)); five1.click(); WebElement equalTo=driver.findElement(By.name("=")); equalTo.click(); //locate the edit box of the calculator by using By.tagName() WebElement results=driver.findElement(By.tagName(“EditText”)); //Check the calculated value on the edit box assert results.getText().equals(“5”):“Actual value is : “+results.getText()+” did not match with expected value: 5”; WebElement clear=driver.findElement(By.name(“CLR”)); clear.click(); } @After public void teardown(){ //close the app driver.quit(); } }