一、下载安装JDK
这里最好安装JAVASE1.8版本,因为最新的appium2.0需要1.8版本的JDK支持
参考:http://www.cnblogs.com/daxiong2014/p/4334530.html
二、下载安装SDK
参考:http://www.cnblogs.com/daxiong2014/p/4335034.html
三、下载安装Eclipse
官网:http://www.eclipse.org/downloads/,下载安装即可
四、下载安装ADT(如果使用真机运行脚本,不需要这一步)
参考:http://www.cnblogs.com/daxiong2014/p/4399603.html
五、下载安装Node.js(如果不是用npm命令安装appium的话此处可以省略;用Appium.exe可执行文件安装后,安装的文件夹里会含有node的依赖文件,无需再单独安装和配置Node.js)
参考:http://www.cnblogs.com/daxiong2014/p/4398497.html
六、下载安装Appium
这里安装的是Appium的服务端,后面第八步的是客户端jar包
http://www.cnblogs.com/fnng/p/4540731.html
这里注意,安装Appium后,在环境变量path添加";C:Program Files (x86)Appium ode_modules.bin;",再使用appium-doctor进行检测
检测结果如下图,即Appium环境已经OK
七、安装Android模拟器(如果使用真机运行脚本,不需要这一步)
http://www.cnblogs.com/fnng/p/4560298.html
八、下载相关jar包
(1)Selenium类库(包含:客户端和服务端)
http://selenium-release.storage.googleapis.com/2.44/selenium-java-2.44.0.zip
http://selenium-release.storage.googleapis.com/2.44/selenium-server-standalone-2.44.0.jar
(确认2014.11.14有效,如无效请访问http://docs.seleniumhq.org/download/ 进行下载 )
注:需要导入两个,服务端库不导入会导致运行时报错。
(2)Appium类库
这里是Appium的客户端jar包,前面第六步的是服务端
https://search.maven.org/remotecontent?filepath=io/appium/java-client/1.2.1/java-client-1.2.1.jar
(确认2014.11.14有效,如无效请访问http://appium.io/downloads.html 进行下载 )
注:此处如果选择下载最新的2.0以上的版本,会导致编译new
AppiumDriver时报错。解决办法见:
http://blog.csdn.net/zhubaitian/article/details/39717889
(3)Junit类库或者TestNG类库
Junit和TestNG只是辅助工具,为了更好的自动化,与appium环境搭建没有关系,可以不需要这一步
新版的Eclipse自带Junit类库,至于要用Junit还是TestNG就看个人所需了
九、创建测试工程
创建测试工程,并导入第八步下载好的jar包
工程名右键->Build Path->configure Build Path->Java Build Path->Libraries->Add External JARs添加下载好的jar包即可
十、启动Appium
由于我测试是连接真机的,所以这里需要先通过adb devices -l 命令获得 真机的udid号,详细步骤如下:
1)真机(安卓版本4.2.2)通过USB连接 电脑,驱动装好,打开USB调试模式
2)运行cmd 输入 adb devices -l 查看UDID 如图:
3)再在cmd中输入 appium -a 127.0.0.1 -p4723 -U4d007e9a1b0050d1 (-a表示ip,-p表示端口,-U表示设备的udid 可以通过appium -h查看更多命令)
4)如果如下图所示 就表示 appium服务启动成功了,注意这个窗口不要关闭 因为这是appium的服务 关了就关了服务,后面过程无法执行,而且这个窗口也是 日志输出的窗口用于排错。
十一、安装APK&编写测试代码&运行
(1)在CMD上用adb install APK所在路径 命令把要测试的APK安装到手机上
这里注意,此处因为底层调用框架不同,请在4.2及以上的操作系统安装,具体原因可以百度下
(2)在第九步创建的工程下,新建包->在新的包下新建Class文件
在新建的Class文件上键入以下代码:
package firstAppium;//这个包名根据自己的包修改即可 import io.appium.java_client.AppiumDriver; import io.appium.java_client.android.AndroidDriver; import java.net.URL; import org.openqa.selenium.remote.CapabilityType; import org.openqa.selenium.remote.DesiredCapabilities; public class test001 {//这个类名根据自己的Class文件名修改即可 public static void main(String args[]) throws Exception { AppiumDriver driver;//新建一个AppiumDriver的变量,方便后面存储该对象的引用 DesiredCapabilities cap = new DesiredCapabilities();//实例化一个客户端配置对象 cap.setCapability(CapabilityType.BROWSER_NAME, "");//移动终端浏览器配置信息,如只对应用做自动化,该值为空即可 cap.setCapability("platformName", "Android");//平台信息,告诉appium测试的载体是android还是IOS还是FirefoxOS cap.setCapability("deviceName", "a42b02eb");//设备ID号 cap.setCapability("platformVersion", "4.4");//操作系统版本号 //这是我的apk,游戏中心 cap.setCapability("appPackage", "cn.lt.game");//包名 cap.setCapability("appActivity", ".ui.app.LoadingActivity");//主Activity //支持输入中文 cap.setCapability("unicodeKeyboard", "True"); //重置输入法为系统默认 cap.setCapability("resetKeyboard", "True"); //不对APK进行重签名 //cap.setCapability("noSign", "Ture"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap);//实例化androidDriver Thread.sleep(5000); //driver.findElement(By.id("com.android.calculator2:id/digit9")).click(); Thread.sleep(5000); driver.quit(); } }
包名和主Activity的获取可以通过aapt dump badging apk包的路径
如下:
package: name=’com.estrongs.android.pop’
launchable-activity: name=’com.estrongs.android.pop.view.FileExplorerActivity’
(3) 运行
运行后,会看到手机上应用会自动启动,暂停10s后再退出
至此,Appium环境已经搭建成功!
因为本人脑子比较笨,看到很多网上的环境搭建帖子,其中把很多不需要的东西都加入到搭建步骤里,尤其还要下载别人的APK、代码,搞得云里雾里,所以开此一贴以求能最方便、最清晰、最通俗易懂把Appium搭建起来
此贴有部分参照网上大神的帖子
如有问题请批评指正