[英]Appium test not starting app on Android
我必须了解Appium,并且正在做“ Hello Appium”。
Windows8,Appium 1.4.13.1,IntelliJidea 14.1
WebDriver driver;
@Before
public void setUp() throws MalformedURLException {
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME,"5554:Nexus_5");
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "5.1");
capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION,"Android");
capabilities.setCapability(MobileCapabilityType.APP,"C:\\Users\\demitria\\Desktop\\testapp.apk");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
}
@After
public void tearDown() throws Exception {
driver.quit();
}
@Test
public void tapOnLoginNotFilledAnyThing(){
WebElement mob = driver.findElement(By.id("com.example.testapp:id/login_login_button"));
//here on mob WebElement I get java.lang.NullPointerException
//at MyFirstTest.tapOnLoginNotFilledAnyThing(MyFirstTest.java:78)
mob.click();
}
@Test
public void logInWithInvalidEmail(){
}
在appium上,我有申请路径
C:\\ Users \\用户demitria \\桌面\\ testapp.apk
Appium也可以很好地与Appium检查器一起使用,但是当我启动测试时,模拟器没有任何反应(从某种意义上来说,应用程序不是在模拟器中启动的),但是实际上测试已经执行,或者至少我认为是这样。 我在IntelliJidea上也收到警报图标。 关于我在做什么错的任何想法
解决了。
1.-卸载IntelliJidea 14.1并安装Eclipse(当前版本),它比IntelliJ给我更多有关错误的信息(您可以忽略这个陡峭的地方)
2.-将我的.apk移至-> sdk \\ build-tools \\ ApiVersionYouAreUsingInAppium,我的情况为C:\\ Android \\ sdk \\ build-tools \\ 22.0.1
3.-在Appium-> Android设置->您的应用路径上设置新路径
修改功能,如下所示
public void setUp() throws MalformedURLException {
DesiredCapabilities capabilities = new DesiredCapabilities();
File appDir = new File("C:\\Android\\sdk\\build-tools\\22.0.1\\");
File app = new File(appDir, "testapp.apk");
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME,"Nexus_5");
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "5.1");
capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION,"Android");
capabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath());
capabilities.setCapability(MobileCapabilityType.APP_PACKAGE,"com.example.testapp");
capabilities.setCapability(MobileCapabilityType.APP_ACTIVITY,"com.example.testapp.MainActivity");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
}
请尝试如下所示的修改功能。
public void setUp() throws MalformedURLException {
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME,"5554:Nexus_5");
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, "5.1");
capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION,"Android");
capabilities.setCapability(MobileCapabilityType.APP,"C:\\Users\\demitria\\Desktop\\testapp.apk");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
}
如果在设置MobileCapabilityType.APP
功能时带有APK文件,则Appium在运行时会自动打开应用程序的主要活动。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.