最近在调研APP端自动化测试工具Appium,因为它支持跨平台、无侵入、支持原生及混合应用、支持多语言脚本编写等优点,目前Appium在移动端软件测试领域中也受到大家的广泛青睐,今天就分享一下自己的Appium搭建及使用过程,大家一起共同学习、共同进步。
首先,我们看下业界Top自劢化测试框架综合对比:
Appium的设计理念:
1. 无需用户对APP进行任何修改或者重新编译,App应该Born to be automated。
2. 不应该限制用户只能使用特定的语言或者框架来编写和执行测试。
3. 移动测试框架的API应该是稳定的,合理的。不应对自动化API 重复的造轮子。
4. 移动测试框架应该是开源的,包括“精神和肉体”。
Appium的架构
1. IOS: 苹果的 UIAutomation
2. Android:
Android 4.2+: Google的 UiAutomator
Android 2.3+: Google’s Instrumentation. (由单独的项目Selendroid提供支持)
Appium的优点
跨架构,Native、Hybrid、WebView
跨设备,Android、IOS、FireFoxOS
跨语言,Java、Python、Ruby、PHP、JavaScript等
夸App,可以在多个App之间进行交互
无需添加SDK,无需修改源码,无需重新编译测试App
Appium环境需求:JDK环境、Android SDK环境、Node.js、Appium、Python、Eclipse
1. JDK下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2. 使用默认路径安装至完毕,执行java –version 验证安装成功
3. 配置JDK环境变量
“我的电脑”>鼠标右键菜单>"属性">"高级系统设置">"环境变量";
“系统变量”>“新建”,变量名中填写“JAVA_HOME”,变量值填JDK安装位置,如: C:Program Filesjavajdk1.6.0_45
“系统变量”>“新建”,变量名中填写“CLASSPATH”,变量值追加 .;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar *(注意分号前面有个.符号)
“系统变量”>“path”,点击编辑,在变量值中已有内容的后面追加 ;%JAVA_HOME%in;%JAVA_HOME%jrein;
1. 安装最新ADT,自行百度下载
若出现Appium识别不出apk包信息,安装最新Android Studio代替ADT
2. 配置Android SDK环境变量
新建 ANDROID_HOME 环境变量,变量值是SDK解压的路径,如: D:android-sdksdk
追加SDK如下目录到Path变量:
tools目录:;%ANDROID_HOME% ools
platform-tools目录:;%ANDROID_HOME%platform-tools
build-tools目录:;%ANDROID_HOME%uild-tools.0.3
3. 验证Android SDK相关环境变量
验证tools环境变量: cmd命令行执行 android,可启动Android SDK Manager
验证platform-tools环境变量:安装手机驱动连接真机,cmd命令行执行 adb devices, 可看到设备Id
验证build-tools环境变量: cmd命令行执行 aapt,可看到这条命令的帮助信息
Node.js的官网依据系统选择下载安装Node.js 和 npm(Node.js的包管理工具)
2. 安装过程一路Next,直至安装完成
1. Appium下载(官网):
2. 下载最新版v1.4.16.1, 直接双击安装直至完成,桌面会生成Appium快捷方式
Appium是用.net开发的,所以安装之前需要安装.net framework,否则安装过程中会报错,若.net framework报错,可去官网下载安装
配置appium.cmd文件所在路径: ;C:Program Files (x86)Appium ode_modules.bin 到Path环境变量
3. 检查Appium所需环境是否OK?
进入cmd命令行输执行appium-doctor,All checks were successful 则成功
1. Python的官网依据系统选择下载安装Python 2.7.11客户端
2. 参考https://pypi.python.org/pypi/setuptools文档,安装python setuptools,下载ez_setup.py, 执行命令:python ez_setup.py install
3.下载Appium-python-client.zip,将文件夹解压到任意位置,然后使用命令行进入到解压后的文件夹目录,执行命令:python setup.py install
1. Eclipse下载地址:http://www.eclipse.org/downloads/
2. 依据系统选择下载后,默认安装直至完成
3. 至此,Appium环境搭建完成
1. 创建一个空白的Android测试工程
点击File->New->Project->Java Project, 输入工程名称,比如 AppiumJavaTest
点击finish,工程建立完成,如下图:
下载appium-jar依赖包:
2. 导入jar依赖包
导入依赖的jar包,AppiumJavaTest右键->Properties->Java Build Path->Add External JARs 将下载文件中appium-jars文件夹中的三个jar包导入,如下图:
点击OK,导入
3. 编写自动化测试用例
创建一个Capabilities.java的文件和一个Main.java文件,如下图:
打开Capabilities.java添加如下代码(Capabilities参数释义参见官方GitHub):
打开Main.java,添加如下代码:
注意,测试app的位置要和Capabilities里面path位置一致
4. 开始自动化测试
连接手机,打开调试,双击运行Appium,点击安卓机器人,按如下设置相关参数,如下图:
点击右上角【启动】按钮,启动本地Appium服务(默认端口4723和Capabilities里定义一致),启动后如下图:
工程右键->Run As->Junit Test, 如下图:
注意手机界面变化、脚本以及Appium server端的日志输出,如下图:
至此,Appium搭建及脚本编写完毕,就看你自己如何设计脚本、设计用例了。
每天学习一点,进步一点,努力提升自己...