一、java环境配置
省略,请参考网上jdk安装
二、Android环境配置



在cmd中输入adb device、emulator来验证环境变量配置成功
只是下载,不用安装,主要用sdk/tools下的uiautomatorviewer.bat定位元素
三、Appium安装

要记住node.js的安装路径,配置到系统变量path中:

在百度输入net framework下载net framework4.7.2,安装成功后不用配置环境变量。
npm 是 node下的包管理工具,项目中有依赖包的 可以通过npm去下载安装。就像pip是python的包管理工具一样
打开cmd,进入c盘目录,输入命令:
npm -registry http://registry.cnpmjs.org install -g install
安装APPium服务
用Npm install -g appium命令也可以:

以上两个命令可能都会安装失败,按着下面的步骤安装:
命令安装 npm install -g appium(如果安装失败那么就指定国内的淘宝源安装吧,官方源我应该试了n次费了很大劲才安装成功)
指定淘宝源安装:设置 npm 淘宝镜像,
npm config set registry https://registry.npm.taobao.org
npm install appium -g --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver

安装成功后配置appium的环境变量:


第三步自然是想验证一下appium是否安装成功
首先cmd窗口输入appium -v 显示了版本号
其次使用appium-doctor检查环境,可是怎么就是不成功,一直显示:'appium-doctor' is not recognized as an internal or external command,
各种尝试百度之后在一篇帖子找到了答案,appium-doctor需要安装于是:npm install appium-doctor -g
第四步顺利执行:Appium-doctor,环境检查成功

四、APPium图形化安装


双击安装:


点右上角的三角符号就开启了Appium的服务

这是通过图形化方式打开appium的服务。
打开cmd输入appium也可以启动appium的服务,执行自动化时appium的服务是必须要打开的。
五、IntelliJ IDEA 中集成安卓环境
进入idea中创建一个maven的项目,在pom.xml文件中添加如下依赖:
maven依赖:
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.10</version>
</dependency>
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>selenium-server-standalone</groupId>
<artifactId>selenium-server-standalone</artifactId>
</dependency>
</dependencies>
点击file--settings中

搜索Android,配置sdk,sdk是在adt-bundle-windows-x86_64-20140702文件夹下,上面第二步又下载这个包,放到d盘根目录就可以,我的路径是D:\adt-bundle-windows-x86_64-20140702\sdk

创建一个简单的启动app的类,内容如下:
package com.yin.Appiumdemo;
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import java.io.File;
import java.net.URL;
import java.util.List;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.Test;
public class ContactsTest {
//创建driver对象
private AppiumDriver driver;
//创建执行前配置方法
@BeforeTest
public void setUp() throws Exception {
// set up appium
//获取当前根目录下的文件,当前根目录就是D:\Springboot\MyApplicationthree,项目名是MyApplicationthree
File classpathRoot = new File(System.getProperty("user.dir"));
//获取apps目录下的文件
File appDir = new File(classpathRoot, "/apps");
//获取蘑菇智行.apk,需要提前把该apk放到apps文件夹下
File app = new File(appDir, "蘑菇智行.apk");
//创建设备属性对象
DesiredCapabilities capabilities = new DesiredCapabilities();
//设置设备系统为Android
capabilities.setCapability("platformName", "Android");
//设置设备名称为PBVGK16918902121,可以通过usb连接手机,在cmd中输入命令,adb devices 看到设备名称
capabilities.setCapability("deviceName","PBVGK16918902121");
//设置设备安卓系统,可以在手机的设置中查看系统号
capabilities.setCapability("platformVersion", "8.0.0");
//获取app的绝对路径
capabilities.setCapability("app", app.getAbsolutePath());
//设置app的包名,通过usb连接手机,在手机中打开app,在cmd中输入命令adb shell dumpsys window | findstr mCurrentFocus 查看包名
capabilities.setCapability("appPackage", "com.zhidao.mobile");
//设置app的入口,通过反编译可以查到该值,参考apk反编译文档获取该值
capabilities.setCapability("appActivity", "com.zhidao.mobile.ui.activity.SplashActivity");
//设置测试机与idea的通讯协议
driver = new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
System.out.println("App is launched!");
}
@Test
public void addContact(){
//没写实际代码,测试环境配置正确
System.out.println("App is done!");
}
@AfterTest
public void tearDown() throws Exception {
driver.quit();
}
}
报错解决:
第一个问题:

第二个问题报错:
Possible causes are invalid address of the remote server or browser start-up failure.
是Appium的服务没打开,把Appium的图形化界面打开

或者在cmd命令窗口中输入appium即可把appium的服务启动起来。
摘抄网上资料:
appium运行时错误:http://www.51testing.com/html/01/610901-864955.html
appium运行时错误2:https://www.cnblogs.com/wangcp-2014/p/6137088.html
网友评论