2017-11-07 20 views
-1

테스트 자동화를 배우고 있으며 Android 에뮬레이터를 열고 자바 코드를 작성하려고 할 때 멈추었습니다.테스트 자동화 용 Java; 코드 실행 초보자 문제

내 코드의 그 :

package com.company; 

import io.appium.java_client.android.AndroidDriver; 
import io.appium.java_client.remote.MobileCapabilityType; 

import org.openqa.selenium.remote.DesiredCapabilities; 


import java.io.File; 
import java.net.MalformedURLException; 
import java.net.URL; 

public class Main { 

    public static void main(String[] args) throws MalformedURLException { 
    // write your code here 

     File f=new File("src"); 
     File fs=new File(f, "ApiDemos-debug.apk"); 

     DesiredCapabilities cap=new DesiredCapabilities(); 
     cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Demo"); 
     cap.setCapability(MobileCapabilityType.APP, fs.getAbsolutePath()); 

     AndroidDriver driver=new AndroidDriver(new URL("http://127.0.0.1:4732/wd/hub"), cap); 

    } 
} 

그리고 그 로그입니다 :

Exception in thread "main" java.lang.NoSuchMethodError: com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder; 
    at org.openqa.selenium.json.Json.<clinit>(Json.java:47) 
    at org.openqa.selenium.logging.profiler.HttpProfilerLogEntry.constructMessage(HttpProfilerLogEntry.java:37) 
    at org.openqa.selenium.logging.profiler.HttpProfilerLogEntry.<init>(HttpProfilerLogEntry.java:29) 
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:141) 
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:600) 
    at io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:180) 
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:219) 
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:142) 
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:155) 
    at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:109) 
    at io.appium.java_client.android.AndroidDriver.<init>(AndroidDriver.java:39) 
    at com.company.Main.main(Main.java:25) 

Process finished with exit code 1 

어떤 제안을 환영합니다!

+1

셀렌/gson의 종속성 버전이 일치하지 않습니다. –

+0

게시물 태그에 Appium을 추가해야합니다. –

답변

0

기본 Java 프로그래밍 지식이없고 Appium을 처음 사용하는 경우 가장 좋은 방법은 appium 제공자가 java-client repository에 Android 용 테스트를 작성하는 방법을 확인하는 것입니다.

그냥 몇 가지 팁 :

  • BaseAndroidTest.java 프로그래밍 및
  • AndroidElementTest.java 당신이 요소
을 찾을 하는 방법에 대해 설명 안드로이드 드라이버의 인스턴스를 생성하는 방법을 시작 서버를 알려줍니다

내가 언급하고 내가 사용한 코드를 분석하는 데 시간을 할애한다. 귀하의 로컬 컴퓨터에. 희망은 당신이 학습 자동화의 다음 단계를 만드는 데 도움이됩니다.

0

내 ApiDemo.apk는 이러한 조합으로 작업했습니다. 트릭은 에뮬레이터/장치를 선택하고 APK 파일을 관련시키는 데 달려 있다고 생각합니다.

ApiDemo.apk

내 에뮬레이터/장치는 나의 SDK 파일에서 시스템 이미지에서 APK 파일을 사용 (23 안드로이드 데) 안드로이드 (6)이다.

REST는 ALL I 위의 조합 항아리에 현재 버전 항아리

에게
Selenium-java-3.8.1 
appium java client-6.0.0.0-BETA1.jar 
common-lang3-3.7 jars 
gson 2.8.2.jar (Need to download gson jar seprately) 

Appium 버전 1.6.5 또는 현재 버전 1.7.1 (사용

(이 파일 나는 C:\Users\<UserName>\AppData\Local\Android\Sdk\system-images\android- 23\google_apis\x86\data\app\ApiDemos\ApiDemos.apk SDK 파일에서 그것을 가지고) 파일 및 apk 파일은 appium 버전 모두에서 잘 작동했습니다. 앱을 열고 요소와 상호 작용할 수 있습니다.)

전체 구성을 제공하여 추가 레슨을 시작할 수 있습니다.