我想在eclipse中使用appium運行在android中的測試。當測試開始並且應用程序啓動時,它會在嘗試按下按鈕時在第一個命令上拋出錯誤。我很確定這個按鈕的id是正確的,因爲selendroid運行相同的代碼。失敗跟蹤處的錯誤顯示java.lang.NullPointerException。這裏是我的代碼:appium測試findElement按鈕單擊不應該當它應該
package thePack;
import static org.junit.Assert.*;
import io.appium.java_client.AppiumDriver;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
public class theTest {
static AppiumDriver driver;
@Before
public void setUp() throws MalformedURLException, InterruptedException, Exception
{
WebDriver dr;
File app = new File("C:\\development\\src\\main\\resources\\app.apk");
DesiredCapabilities capabilities= new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability("deviceName", "Vodafone Smart 4G");
capabilities.setCapability("platformVersion", "4.2.2");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("app", app.getAbsolutePath());
capabilities.setCapability("appium-version", "1.2.1");
capabilities.setCapability("appPackage", "mypackage.mine.net");
capabilities.setCapability("appActivity", "mypackage.mine.net.activities.mainActivity");
dr = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities) ;
}
@Test
public void login() throws Exception
{
Thread.sleep(0500);
driver.findElement(By.id("english")).click();
Thread.sleep(0500);
}
任何想法?謝謝!