APPIUM环境搭建及APP配合RF自动化的操作步骤

在用APPIUM做APP自动化测试过程中,首先碰到的问题就是环境搭建.

过程相对于WEB端自动化来说,搭建过程稍微复杂些,但是appium与WEB端的selenium原理相差不多.

二者在robotframework自动化框架中,共用了很多API关键字.

APPIUM环境搭建步骤简单概述一下.

前提,我都是用的PYTHON开发语言做的自动化.

第一步:

pip install Appium-Python-Client 

第二步:

pip install robotframework-appiumlibrary   

第三步:

先安装JDK,JDK最好用1.7版本以上的.我用的是1.8版本.(JDK包自行去下载)

1、右击计算机-属性-高级系统设置-高级-环境变量-系统变量-新建:
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.8.0_91

2、系统变量→寻找 Path 变量→编辑
在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; (注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)

3、系统变量→新建 CLASSPATH 变量
变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点)

4、检验是否配置成功 运行cmd 输入 java -version (java 和 -version 之间有空格)

显示版本信息 java(TM) SE Runtime Environment .... 则说明安装和配置成功。

第四步:

配置安卓 SDK,(安卓SDK包自行去下载)

1、【android_sdk】复制到C/D/E盘根目录。

2、新增系统变量【Android home】
变量名:ANDROID_HOME
变量值:C:\android_sdk(改成对应的路径即可)

3、在path中添加:

%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

第五步:

下载一个安卓模拟器.(我用的是夜神模拟器).具体自行去下载.

第六步:

下载APPIUM,(https://bitbucket.org/appium/appium.app/downloads/)找到对应的版本。

第七步

下载好模拟器后,连接到设备.

命令1:adb connect  +ip+端口

如:adb connect 127.0.0.1:62001(62001是夜神模拟器的端口号)

命令2:adb devices

这个命令可以检查是否连接到设备或模拟器.

第八步:

下载一个APK包或者问公司开发同事要一个.

在APPIUM中配置好SDK 路径,同时导入APK包.

启动APPIUM.

第九步:

把APK包安装到模拟器或真机设备中.并启动.

第十步:

打开RF工具,并新建项目,等与做WEB端自动化同样的操作.

这里特别提一点,就是AppiumLibrary中的打开应用服务关键字(open application) 后面的参数设置:

大家要知道后面每个参数所代表的意思,并知道如何找到这些参数.

 

第十一步:

安装android adt & SDK

Android SDK:

Android SDK提供了你的API库和开发工具构建,测试和调试应用程序,Android。简单来讲,Android SDK 可以看做用于开发和运行Android应用的一个软件。

扩展理解:

ADT(Android Development Tools): 目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。adt只是一个eclipse的插件,里面可以设置sdk路径
     SDK(Software Development Kit): 一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。在Android中,他为开发者提供了库文件以及其他开发所用到的工具。简单理解为开发工具包集合,是整体开发中所用到的工具包,如果你不用Eclipse作为你的开发工具,你就不需要下载ADT,只下载SDK即可开发。SDK可以自己编译,在linux环境下通过make命令进行,耗时比较长,需要有耐心哦亲。。。然后我们可以把自己编译的SDK通过ADT导入eclipse。在此基础上可以对源码包进行修改,比如修改android system/app/phone.apk中的源码,

 

通过官方地址下载:http://developer.android.com/sdk/index.html

当然,我不能保证你可以访问到这个地址,原因你懂的!

这里提供adt-bundle 下载链接:

http://dl.google.com/android/adt/adt-bundle-windows-x86-20140702.zip

https://dl.google.com/android/adt/adt-bundle-windows-x86_64-20140702.zip

http://dl.google.com/android/adt/adt-bundle-mac-x86_64-20140702.zip

http://dl.google.com/android/adt/adt-bundle-linux-x86-20140702.zip

http://dl.google.com/android/adt/adt-bundle-linux-x86_64-20140702.zip

 

Android-sdk下载地址:

http://dl.google.com/android/android-sdk_r23.0.2-windows.zip

http://dl.google.com/android/installer_r23.0.2-windows.exe

http://dl.google.com/android/android-sdk_r23.0.2-macosx.zip

http://dl.google.com/android/android-sdk_r23.0.2-linux.tgz

 

根据我的验证adt和sdk 都可以用来运行android 模拟器,所以下载哪个都可以。下载链接中已经标识了系统信息,请根据自己的操作系统下载相应的版本。

 

Adt 和sdk 解压包对比,相对adt的内容要多一些,如果你不做android开发的话,两者都可以。

 

下面设置Android环境变量,方法与java环境变量类似。我本机的目录结果为:

D:\android\android-sdk-windows

下面设置环境变量:

“我的电脑”右键菜单--->属性--->高级--->环境变量--->系统变量-->新建..

变量名:ANDROID_HOME 

变量值:D:\android\android-sdk-windows

找到path变量名—>“编辑”添加:

变量名:PATH

变量值:;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

 

SDK Manager安装模拟器

  双击启动SDK Manager.exe 程序。

 

 

当然,我不能保证你SDK可以更新。所以,这里推荐一个网站:http://www.androiddevtools.cn/

它提供了国内的代理,以及各种开发工具的安装。

在Android SDK Manager 的菜单栏上点击“Tools”---->“Options...”设置相关代码,如下图:

 

然后,就可以更新了:

 

安装SDK Platform-Tools

  Android SDK Platform-tools 是版本有区别的工具文件夹,里面有adb 、aapt、fastboot 等工具包。在AndroidDevTools.cn 网站上找到Android SDK Platform-tools下载链接。

  把解压出来的 platform-tools 文件夹放在 android sdk 根目录下,并把 adb所在的目录添加到系统 PATH 路径里(这个我们在设置android环境变量时已经添加)。

  打开Windows命令提示符,通过“appium-doctor”命令检查appium环境。

运用APPIUM做APP自动化时,定位的话.

1,打开 夜神安卓模拟器,且打开app:

2, 打开【android_sdk\tools\uiautomatorviewer.bat】

这样就可以正常定位了.

第十二步:

剩余的其它步骤,与WEB端用RF工具做自动化的操作步骤与流程一样了.

先导入第三库,然后编写公共关键字,然后编写业务流程关键字,并封装.再编写用例,在此过程也可以对业务流程关键字进行再次封装.

 

 

 

其实无论是APP的UI自动化还是WEB端的UI自动化难点在于第一是定位,第二是设计的思路.

其它的无非是工具不同,框架的使用不同,基本上都能达到预期的效果.

当然了你还得熟悉各种API,这样在写自动化测试脚本时,才会轻松.

另外要注意,封装的程度,设计的思路,这些都会影响脚本的稳定性及自动化的成败.

 

posted @ 2018-03-03 19:27  知识在于点滴的积累  阅读(2614)  评论(0编辑  收藏  举报