NullPointerException в Java-клиенте Appium - PullRequest
0 голосов
/ 22 ноября 2018

Я получаю NullPointerException при попытке установить простой AndroidDriver.

Требуемый код указан ниже -

import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.MobileElement;

import io.appium.java_client.android.AndroidElement;

import java.net.URL;
import java.net.MalformedURLException;

import org.openqa.selenium.remote.DesiredCapabilities;

public class TestAutomation {
    protected AndroidDriver<MobileElement>  driver;

    public void setup() throws MalformedURLException, InterruptedException {
        URL u = new URL("http://127.0.0.1:4723/wd/hub");

        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("device", "Android");
        capabilities.setCapability("deviceName","Android");
        capabilities.setCapability("platformName","Android");

        driver = new AndroidDriver<MobileElement>(u, capabilities);
    }

    public static void main(String[] args) throws Exception {
        TestAutomation object = new TestAutomation();
        System.out.println(object);
        object.setup();
    }
}

Версия клиента Java Appium - 6.1.0.

Проверено, что сервер Appium работает на локальном хосте через порт 4723.

Есть ли что-то, чего мне не хватает?

Полученное исключение показано ниже -

Исключение в потоке "main" java.lang.NullPointerException в io.appium.java_client.android.AndroidDriver.getCapabilities (AndroidDriver.java:209) в org.openqa.selenium.remote.RemoteWebDriver.execute (Remote.Java: 669) в io.appium.java_client.DefaultGenericMobileDriver.execute (DefaultGenericMobileDriver.java:42) в io.appium.java_client.AppiumDriver.execute (AppiumDriver.java:1) в io.appid.jid(AndroidDriver.java:1) в org.openqa.selenium.remote.RemoteWebDriver.startSession (RemoteWebDriver.java:249) в org.openqa.selenium.remote.RemoteWebDriver. (RemoteWebDriver.java:1enq.aava.1aq.aa).remote.RemoteWebDriver. (RemoteWebDriver.java:144) на сайте io.appium.java_client.DefaultGenericMobileDriver.ava_client.AppiumDriver. (AppiumDriver.java:84) в io.appium.java_client.AppiumDriver. (AppiumDriver.java:94) в io.appium.java_client.android.AndroidDriver. (тест AndroidDriver.java:93)TestAutomation.java:22) в TestAutomation.main (TestAutomation.java:28)

1 Ответ

0 голосов
/ 22 ноября 2018

У вас проблемы с желаемыми возможностями.

appActivity и appPackage должны быть включены.

устройство из необходимых вам возможностей должно быть удалено.

DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability("deviceName", "My Phone");
caps.setCapability("platformName", "Android");
caps.setCapability("appPackage", "your app Package");
caps.setCapability("appActivity",
            "your app activity");;

Также обновите вашу версию selenium-java до последней стабильной версии.

...