appium测试环境搭建与设置介绍

设置环境变量

1.安装Nodejs

下载nodejs安装包(http://nodejs.org/download/)

验证:运行cmd,输入node -v

安装理由:Appium是使用nodejs实现的,所以node是解释器,运行必不可少。

2.安装android的SDK(https://developer.android.com/sdk/installing/index.html?pkg=tools)

变量:ANDROID_HOME

值:D:\android-sdk

设置:Path

值:%ANT_HOME%\bin

验证:运行cmd,输入android -v

安装理由:系统运行依赖sdk中的工具

3.安装Apache Ant

安装Apache Ant 解压缩文件夹并添加环境变量

变量:ANT_HOME

值:D:\apache-ant-1.9.4

设置:Path

值:%ANT_HOME%\bin

验证:运行cmd,输入ant -v

4.安装jdk

变量:JAVA_HOME

值:C:\Program Files\Java\jdk1.8.0_25

变量:classpath

值:%JAVA_HOME%\lib;

设置:Path

值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

验证:运行cmd,输入java -version

5.安装Maven(http://maven.apache.org/download.cgi)

下载解压并配置环境变量

变量:MAVEN_HOME

值:D:\apache-maven-3.1.1

设置:Path

值:%MAVEN_HOME%\bin

验证:mvn -v

6.安装APPIUM

运行cmd,执行npm install -g appium命令安装

验证:运行cmd输入appium

配置运行环境

1.配置Maven环境

配置maven仓库存放位置:

maven目录conf下的settings.xml文件

完成localRepository对应内容设置,默认是本地用户的临时文件夹下面的 .m2 文件夹下的 repository 下

运行cmd,执行:mvn help:system

2.eclipse中maven插件安装

分在线安装与离线安装

将下载的插件包解压到eclipse\dropins下之后重启eclipse

window-Preference可以看到maven选项,配置installations:maven目录,UserSettings:maven目录\conf\settings.xml


APPIUM参数设置

1.Android Settings  - Android设置按钮,所有和安卓设置的参数都在这个里面

1.1Application:你可以定义APP及APP的行为

ApplicationPath:apk路径

Package:填写android app的包名

Wait for Package:要等待的package

Launch Activity:输入要运行的activity

Use Browser:使用设备内置的浏览器

Full Reset:回话结束后卸载app

No Reset:不会重置设备中的应用

IntentAction:启动activity

IntentCategory:指定想启动的app

Intent Flags:通常用于启动app的activity

Intnet Arguments:传达额外的参数去启动app的activity

1.2LaunchDevice 在这里设置安卓模拟器

Launch AVD:设备名称

Device Ready Timeout:等待设备超过时间

Arguments:传递额外的参数去启动设备

1.3Capabilities

Platform Name:测试平台的名字,一般为Android

AutomationName:测试引擎的名字,默认是appium,api版本小鱼17时请使用selendroid

Platform Version:设备版本号

Device Name:设备名字

Language:模拟器使用的语言

Local:默认即可

1.4Advanced

SDK Path:android sdk路径,无需指定,配置好android sdk环境变量即可

Coverage Class:指定instrumentation class

Bootstrap Port:分布式测试时需要用到,用于和appium通信

Selendroid Port:分布式测试时需要用到,用于和selendroid通信

Chrome Drive Port分布式测试时需要用到,用于和chromedriver通信


2.General Settings – 通用设置按钮

2.1server

Server Address:Appium server的ip地址,默认即可

Port:端口号,默认4723

Check For Updates:每次启动是否检查appium更新

Pre-Launch Application:勾选后启动server后会先启动app,需要在app path中定义app

Overriding Existing Session:覆盖之前的session,批量测试的时候需要勾选

Selenium Grid Configuration File:配置selenium grid文件,用于并行分布式测试


Developer Settings – 开发人员设置

About – 关于

Inspector – 元素侦测

Launch the Appium node server – 启动server

Clear – 清除日志



Android Capabilities

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("automationName", "Appium");
capabilities.setCapability("platformName","Android");
capabilities.setCapability("deviceName","Android Emulator");
capabilities.setCapability("platformVersion", "4.4.2");
capabilities.setCapability("app", app.getAbsolutePath());
capabilities.setCapability("appPackage", "com.example.android.contactmanager");
capabilities.setCapability("appActivity", ".ContactManager");

Desired capability 是一个jason对象,包含一组key和value,由客户端发送给服务端,告诉服务端期望的Capabilities

有哪些,然后服务端根据这些capabilities创建自动化会话(session)

1.通用Capabilities

automationName

这个capability主要是定义测试引擎。当你在安卓平台上进行测试的时候,你需要确认你使用的android sdk版本,如果是小于17的话,你需要指定测试引擎为:Selendroid。如果大于等于17,你需要使用的引擎是:Appium

platformName

定义测试平台的名字,通常用于移动设备。值有:Android、iOS和FirefoxOS

deviceName

移动设备的名字,比如iPhone 5s、Google Nexus等

app

苹果app或者安卓app的路径,可以是本地的绝对路径,也可以是远程网络路径,只要有访问权限即可。根据这个app capabilities,Appium会在启动测试之前安装好app到设备

browserName

测试webapp时需要定义browserName,对于android来说一般是Chrome,IOS可能是safari

newCommandTimeout

为了结束appium会话(session),appium会设置一个等待从客户端发送命令超时的时间。默认时间是60秒

autoLaunch

设置设个capability,会自动安装app并且启动app

autoWebview

如果你测试的是混合应用并且想直接进入webview内容中,那么你需要设置设置这个capability的值为true


2.Android独有Capabilities

appPackage

设置安卓app的包名的capability,告诉appium你要运行哪个app

appActivity

设置你想要运行的app的activity(相当于一个界面或者理解成网页),比如:LoginActivity,登录的activity,可以理解为登录界面

appWaitActivity

设置你想要等待的android activity

appWaitPackage

需要等待的app的包

unicodeKeyboard

是否使用unicode键盘输入,如果设置为true,那么可以输入中文和特殊字符,这个很常用,一般设置为true

resetKeyboard

是否重置键盘为原始状态,比如你将键盘设置为了unicode键盘,当用例执行完成之后,将resetKeyboard设置为true,则键盘重置为原始状态
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值