Аппиум тест кейс бросает исключение - PullRequest
0 голосов
/ 11 мая 2018

Я пытаюсь запустить мой первый тестовый пример для аппиума, используя затмение кислорода. я следовал за учебником шаг за шагом

http://www.automationtestinghub.com/appium-tutorial/

Мой фактический код

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

    import org.openqa.selenium.remote.CapabilityType;
    import org.openqa.selenium.remote.DesiredCapabilities;
    import io.appium.java_client.AppiumDriver;
    import io.appium.java_client.MobileElement;
    import io.appium.java_client.android.AndroidDriver;

    public class AppiumTest {
    public static void main(String[] args) {

    //Set the Desired Capabilities
    DesiredCapabilities caps = new DesiredCapabilities();
    caps.setCapability("deviceName", "SM-T211");
    caps.setCapability("udid", "41022b138d311100"); //Give Device ID of your mobile phone
    caps.setCapability("platformName", "Android");
    caps.setCapability(CapabilityType.VERSION, "4.4.2");
    caps.setCapability("appPackage", "com.isinolsun.app");
    caps.setCapability("appActivity", "com.isinolsun.app.activities.OnBoarderActivity");
    caps.setCapability("noReset", "true");

    //Instantiate Appium Driver
    try {
        AppiumDriver<MobileElement> driver = new AndroidDriver<MobileElement>(new URL("http://0.0.0.0:4723/wd/hub"), caps);
        driver.closeApp();
    } catch (MalformedURLException e) {
        System.out.println(e.getMessage());
    }
}

Я использую реальное устройство.

Приложение Appium Desktop установлено. когда я запускаю программу, это дает мне исключение в этой строке

    AppiumDriver<MobileElement> driver = new AndroidDriver<MobileElement>(new URL("http://0.0.0.0:4723/wd/hub"), caps);
        driver.closeApp();
    } catch (MalformedURLException e) {
        System.out.println(e.getMessage());
    }

Сообщение об исключении:

    Exception in thread "main" java.lang.NoClassDefFoundError: javax/websocket/DeploymentException
at io.appium.java_client.android.ListensToLogcatMessages.<clinit>(ListensToLogcatMessages.java:34)
at com.appiumtest.firsttestscript.AppiumTest.main(AppiumTest.java:27)

    Caused by: java.lang.ClassNotFoundException: javax.websocket.DeploymentException
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more

все файлы JAR включены в соответствии с инструкциями. SDK, Android Studio, JDK также добавлены.

Может кто-нибудь направить меня?

Ответы [ 2 ]

0 голосов
/ 15 мая 2018

Вы должны удалить JAR-файл java-client-6.0.0-BETA5 и добавить JAR-файл java-client-5.0.0-BETA5.

Приветствие.

0 голосов
/ 15 мая 2018

Код ниже:

public class AppiumTest
{
   public static void main(String[] args) throws Exception
    {
        // start appium server
           Runtime.getRuntime().exec("cmd.exe /c start cmd.exe /k \"appium -a 0.0.0.0 -p 4723\"");
           //get address of appium server
                URL u=new URL("http://0.0.0.0:4723/wd/hub");
                //provide device and app info
                DesiredCapabilities dc=new DesiredCapabilities();
                dc.setCapability(CapabilityType.BROWSER_NAME,"");
                dc.setCapability("deviceName","NVRW499T9PVCSGTO");
                dc.setCapability("platformName","android");
                dc.setCapability("platformVersion","6.0");
                dc.setCapability("appPackage","com.isinolsun.app");
                dc.setCapability("appActivity","com.isinolsun.app.activities.OnBoarderActivity");
                //create driver object to launch app in device
                AndroidDriver driver;
                while(2>1)
                {
                    try
                    {
                        driver=new AndroidDriver(u,dc);
                        break;//terminate from loop
                    }
                    catch(Exception e)
                    {
                        System.out.println(e.getMessage());
                    }
                }
             driver.closeApp();
            //stop appium server
              Runtime.getRuntime().exec("taskkill /F /IM node.exe");
              Runtime.getRuntime().exec("taskkill /F /IM cmd.exe");

}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...