App自动化(一)appium框架介绍与环境安装
作者:互联网
Appium框架介绍
Appium 的引擎
- Android 是 uiautomator2
- ios 是 xcuitest
Appium 的设计理念
- webdriver 是基于 http 协议的,第一连接会建立一个 session 会话,并通过 post 发送一个 json 告知服务端相关测试信息
- client/server 设计模式
- 客户端通过 webdriver json wire 协议与服务器通讯
- 多语言支持
- server 可以放在任何地方
- 服务器 nodejs 开发的 http 服务
- appium 使用 appium-xcuitest-driver 来测试 iphone 设备,其中需要安装 Facebook 出的 WDA(webdriver agent) 来驱动 ios 测试
Appium 的生态工具
- adb:Android 控制工具
- appium Destkop:内嵌 appium server 和 inspector 的综合工具
- appium server:appium 的核心工具,命令行工具
- appium client:各种语言的客户端封装库,用户连接 appium server,包含 python、java、ruby 等
获取 App 的信息
- 获取当前元素界面:adb shell dumpsys activity top
- 获取任务列表:adb shell dumpsys activity activities
- 获取 app 的 package 和 activity:adb shell logcat | grep -i displayed
- 启动应用: adb shell am start -W -n "package/activity" -S
Capability 设置
-
文档地址:http://appium.io/docs/en/writing-running-appium/caps/index.html
-
platformName: android
-
deviceName: 127.0.0.1:5555 这个通常是 adb devices 的名称
-
appPackage: 这个是 app 的 package 包名
-
appActivity: 这个是 app 的 activity 名
-
noReset:true, false 是否重置测试的环境
-
unicodeKeyboard:true, false 是否需要输入非英文之外的语言并在测试完成后重置输入法,比如输入中文
-
dontStopAppOnReset:true, false 首次启动的时候,不停止 app
-
skipDeviceInitialization:true, false 跳过安装,权限设置等操作
官方测试用 apk
Appium 环境搭建
JDK 的搭建
- 下载 1.8 的 jdk
- 新建环境变量:JAVA_HOME 值为:D:\Program Files\Java\jdk1.7.0
- 新建环境变量:CLASSPATH 值为:.;%JAVA_HOME%\lib;(注意:点号表示当前目录,不能省略)
- 在系统变量 Path 的值的前面加入以下内容:%JAVA_HOME%\bin
SDK 的配置
- 下载 sdk
- 打开 sdk 的 sdk manager,安装 tools 前 3 个和 google 的 usb 驱动
- 配置环境变量 Android home 里面的 platform-tools 和 tools
Appium 的搭建
- 安装 node.js,配置 node.js 的环境变量
- npm install -g cnpm --registry=https://registry.npm.taobao.org
- cnpm install -g appium
- cnpm install -g appium-doctor
- pip install appium-python-client
标签:Appium,App,activity,appium,server,adb,自动化,true 来源: https://www.cnblogs.com/xxiaow/p/16483871.html