繁体   English   中英

Appium测试无法在Android上启动应用

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM