你是appium的新手,我使用eclipse运行了我的第一个测试用例(带有TestNG的Java),但现在我想切换到Android Studio。请逐步向我提供将jar和其他内容添加到Android Studio
的过程答案 0 :(得分:2)
我建议您使用IntelliJ IDEA。您可以使用gradle创建项目,您可以在其中插入依赖项,但您可以通过File - >轻松地包含.jars。项目结构 - >图书馆 - > (+) - > Java然后选择.jar文件。
IntelliJ IDEA已安装testNG,因此您无需安装它。
测试所需的全部是gson-2.2.2,java-client-4.0.0,selenium-java-2.53.1 jars。
连接您的设备使用类
public class Setup {
private final String DEVICE_NAME = "deviceName";
private final String PLATFORM_NAME = "platformName";
private final String PLATFORM_VERSION = "platformVersion";
private final String APP_PACKAGE = "appPackage";
private final String APP_ACTIVITY = "appActivity";
private String deviceName = "Android SDK built for x86"; //device name can be found in device settings
private String platformName = "Android";
private String platformVersion = "6.0"; //version of your android
private String port = "4723"; //port from Appium server
private String url;
private String getIp() throws UnknownHostException {
InetAddress ip = InetAddress.getLocalHost();
return ip.getHostAddress();
}
public AndroidDriver establishConnection() throws MalformedURLException {
try {
url = String.format("http://%s:%s/wd/hub", getIp(), port);
} catch (UnknownHostException e) {
e.printStackTrace();
}
DesiredCapabilities capability = new DesiredCapabilities();
capability.setCapability(DEVICE_NAME, deviceName);
capability.setCapability(PLATFORM_NAME, platformName);
capability.setCapability(PLATFORM_VERSION, platformVersion);
capability.setCapability(APP_PACKAGE, "my.app.package");
capability.setCapability(APP_ACTIVITY, "my.app.activity");
return new AndroidDriver(new URL(url), capability);
}
}
在此之后,您可以使用@BeforeClass
创建新类,您可以在其中创建安装程序类的对象,调用establishConnection();
并初始化驱动程序并使用@Test
方法测试您的应用程序UI。不要忘记先在设备上安装.apk:)
答案 1 :(得分:1)
您需要在Android Studio中安装Appium -
Appium服务器
Appium Java客户端jar
Selenium客户端罐子
您可以观看此视频Step By Step Appium Setup with Android Studio
此致
Anuja
答案 2 :(得分:1)
Android Studio 3.1.2,Min SDK 21.如果Min SDK较低,您可以尝试使用较低版本的appium java-client。
在gradle build file dependencies部分中通过gradle添加Java客户端Jar。确保 您选择的客户端版本可用于您的最小/目标Android SDK。
dependencies {
testImplementation 'io.appium:java-client:4.1.2'
}
您的android项目有一个源文件的java文件夹。在括号中搜索包含单词(test)的文件夹。在那里创建一个java文件。如果将它放在(androidTest)文件夹中,则会遇到各种问题。
将您的单元测试代码添加到该文件中。就我而言,我使用的是JUnit。
通过首选方式安装appium服务器。您可以通过https://github.com/appium/appium-desktop/releases/找到安装可执行文件,或者您可以使用nodejs及其软件包管理器。
配置appium服务器的设置以匹配您的单元测试(即端口应匹配)。
启动appium服务器。
右键点击您的测试,然后点击“运行' XXXXX'其中XXXXX是您班级的名称。
选择所需的模拟器/物理设备。
没有必要像我在一些教程中看到的那样手动下载jar并添加它们。如果您按照上述步骤操作,那么您将拥有所需的一切。
答案 3 :(得分:0)
我完成了所有步骤,但是重建没有成功,然后我将其作为解决方案: 您的应用模块的build.gradle中的android {...}闭包可以解决此问题:
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/notice.txt'
exclude 'META-INF/ASL2.0'
}
,所有错误均已解决。我的Java版本是10,但没有用!!