【发布时间】:2018-04-19 21:18:22
【问题描述】:
我正在学习测试自动化,但在尝试编写 Java 代码以打开 Android 模拟器然后在其上运行应用程序时遇到了困难。
这是我的代码:
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
欢迎提出任何建议!
【问题讨论】:
-
这是 selenium / gson 的依赖版本不匹配
-
您应该将 Appium 添加到您的帖子标签中。
-
@user180100 您的评论应该是一个答案并标记为已接受。它帮助我克服了同样的问题。
标签: java selenium testing automated-tests appium