1、Appium简介
是一个开源的、跨平台的测试工具,测试移动端的应用。
支持IOS、Android
使用Webdriver的jsonWire协议、驱动IOS系统的UIAutoMation库、Andriod UIAutomator框架。
官网地址:http://appium.io
2、APP自动化环境的搭建
2.1安装java环境
2.2安装Android SDK
下载 https://www.androiddevtools.cn/
platform-tools和tools里面都是命令相关的 下一步配置变量
检查sdk安装是否成功
adb --version
Android Debug Bridge version 1.0.41
Version 29.0.6-6198805
Installed as D:\yangxu\download\android-sdk_r24.4.1-windows\android-sdk-windows\platform-tools\adb.exe
2.3安装Appium
2.3.1桌面版
appium desktop
下载地址:https://github.com/appium/appium-desktop/releases
下载完桌面就出现快捷图标
如果appium启动不了的话就是前面的配置有问题
2.3.2命令行——后续更新
通过node去安装
npm -v
node -v
npm install appium -g
appuim 启动服务
2.4安装模拟器
如果没有安卓设备的时候可以用模拟机来代替
以雷电模拟器为例,百度雷电,下载安装即可。
https://www.ldmnq.com/
安装好之后会有报错或者很慢的时候、会有提示 根据提示往下操作就可以。
3、adb使用
3.1 adb介绍
android debug bridge,android sdk自带的一个工具。
只要sdk装好了,adb就相当于装好了
连接android设备和pc端的桥梁,用户通过在pc端通过adb对手机进行一系列的操作。
adb的三大组件:
1、pc客户端 2、pc服务端 3、手机守护进程
3.2 adb常见命令
adb –help
adb devices 查看连接到pc的设备
adb connect 连接设备 连接模拟器
夜神:adb connect 127.0.0.1:62001
mumu: adb connect 127.0.0.1:7555
一般情况下是用usb数据线连接 手机和pc端
usb的插上数据线自动就连接上了
真机连接:
usb和pc连接
打开开发者模式,不同手机稍微不同,打开设置-》关于手机-》连续点击五次版本号
打开usb调试模式
检查adb devices-----在cmd执行
**adb shell** 登录设备,每一个设备,就有一个操作系统,linux
adb install *.apk 可以通过安装包安装应用
adb install -r *.apk 重新安装、保留缓存数据
**安装包路径中不能有中文**
adb shell dumpsys activity | find "mFocusedActivity"
查看当前应用的包名和类名(一个页面的表示)
android 8.0以下有用
adb shell dumpsys activity | find "mResumedActivity"
同上,8.0以上起作用
adb uninstall <包名>
卸载某个应用
adb uninstall -k <包名>
卸载应用但是保留数据和缓存文件,-k为了保留数据和缓存文件
adb kill-server
终止adb服务
adb start-server
启动adb服务,当adb出现问题时,结合kill-server
**adb shell pm list packages**
列出当前系统所以的包名
-f 还会列出路径
adb logcat
获取android系统日志
3.3 adb常见问题及解决方案
1.设备连接不上
真机的驱动程序是否安装
2.多设备不能同时执行adb shell
只保留一台设备
adb -s 指定对应设备名
先adb devices 再adb -s 选一个devices出来的设备名
3.adb端口占用
比如:查看5037端口,干掉对应的程序
C:\Users\18640>adb devices
* daemon not running; starting now at tcp:5037
* daemon started successfully
List of devices attached
emulator-5554 offline
C:\Users\18640>netstat -ano | findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 14320
TCP 127.0.0.1:5037 127.0.0.1:49353 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:63997 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:63998 TIME_WAIT 0
C:\Users\18640>taskkill -f -pid 14320
成功: 已终止 PID 为 14320 的进程。
C:\Users\18640>
4.adb版本不匹配
使用sdk里的adb覆盖模拟器中的adb即可
模拟器的adb版本是31,但是sdk的版本是41,dab devices这样启动运行的时候报错
4、Appium Desktop
4.1界面介绍
4.2检查器会话
DesiredCapabilities
负责启动服务端时的参数设置
Desired Capabilities本质上是key value的对象,它告诉appium server这样一些事情,比如:
本次测试是启动浏览器还是启动移动设备?
是启动andorid还是启动ios?
启动android时,app的package是什么?
启动android时,app的activity是什么?
一般只需要填写四个基础配置即可:
1、deviceName: 设备的名字,其实这个值可以任意设置,一般会天device的值
2、platformName: 平台名 android ios
3、appPackage: 应用的包名
aapt dump badging apk包路径
结果的第一行就有包名
4、appActivity: 入口Activity,通过这个属性,开启app
通过上面的命令结果搜索launchable-activity
4.2.1 输入到appuim中
4.2.2如果启动时报错是因为ANDROID_HOME环境变量没有配置