目录
常用命令
互动操作命令:
安卓手机投屏
有线连接投屏
无线连接投屏
查看日志
稳定性测试
基础
进阶
查看包名和activity名
查看app包名
查看activity名
手机客户端测试
appium自动化测
cmd启动命令appium
selenium和appium 定位方式
停止adb服务:adb kill-server
启动adb服务:adb start-server
显示设备分辨率:adb shell wm size
查看电量:adb shell dumpsys battery
查看机型:adb shell getprop ro.product.model
查看adb版本
adb version
安装app
adb install
卸载app
adb uninstall
上传文件
adb push windows文件夹 安卓文件路径
下载文件
adb pull 安卓文件路径 windows文件夹
am(activity manager ) 命令,用于管理应用的活动页面。启动app需要通过启动页面进行操作。
adb shell am start -W -S com.testing.shop/com.uzmap.pkg.EntranceActivity
pm(package manager)命令,是安卓系统中的查看包名的命令。app应用叫做package。
adb shell pm list package -3 显示第三方包名
获取屏幕坐标:到开发者选项打开指针位置。
点击某个坐标
adb shell input tap x y
输入某个特定的按键
adb shell input keyevent 《keycode》
滑动 :长按就是一个长时间短距离的滑动
解析:x1,y1 第一个坐标;x2,y2 第二个坐标;time时间滑动时间
adb shell input swipe x1 y1 x2 y2 time
输入信息
adb shell input text 《文本》
scrcpy 官方下载 scrcpy-win64-v1.24.zip,
使用国内搬运链接:https://wwz.lanzouf.com/iezWX03zx4de。
确定是否连接有线
adb devices
设备连接状态
adb get-state
device:设备正常连接
offline:连接出现异常,设备无响应
unknown:没有连接设备
如果有线连接设备可以直接投屏
scrcpy
确定是否连接有线
adb devices
后面的5555为端口,可以指定其他的端口,前提是端口未被调用
adb tcpip 5555
192.168.xxxx.xxxx为你手机的ip地址,5555为了设置·的端口号
(手机IP 设置 --找到wifi连接------找到IP地址)需要在同一个网络环境中
adb connect 192.168.xxxx.xxxx:5555
检查是否刚才输入192.168.xxxx.xxxx:5555
adb devices
输入scrcpy即可投屏
scrcpy
小知识点:bat中的等待可以通过 ping -n 完成
查看日志 |
adb shell logcat |
结合管道 |
1、monkey就是安卓系统中的一个命令而已,通过/system/framework下的monkey.jar实现。
学习monkey就是学习参数的使用,以及运行完之后查看日志。
-s:seed参数表示选择的monkey的种子序列号,相当于选了一套固定的动作来进行操作,一般用于进行操作的复现(但是靠不住)。
保持相同的seed和执行次数,可以尝试完成复现。
--ignore系列: monkey原本的机制是遇到ANR(应用未响应) crashes这些问题的时候会中断monkey执行。ignore就可以让monkey在碰到这些问题之后,依然还是执行。
--pct系列的参数,指定动作所占百分比,可以将一些syskey的动作指定为0.
2、monkey使用场景:
完成app的版本发布之后,用monkey进行长时间无人值守的随机测试,来验证app是否会崩溃或者出现应用未响应,检查对手机的性能影响,跑完之后,检查日志中是否有错误。搜索 error,fail,exception,fatal,crash,timeout,找到了就把日志丢给开发分析。
基本稳定性测试、终端设备的性能测试,用做冒烟。
adb shell monkey -s 1655509870546 -p com.tencent.mobileqq --ignore-crashes --ignore-timeouts --ignore-native-crashes --ignore-security-exceptions -v -v -v 1000000>E:\log4.txt
如果自己想停止monkey,到安卓系统中用kill命令杀进程。
adb shell
查看进程号---ps
ps|grep monkey
查看进程号--top
top | grep “monkey”
kill PID
adb shell pm list package -3
adb shell dumpsys activity top | find "ACTIVITY"
adb shell dumpsys activity|findstr "mFoc"
adb shell monkey -p 包名 -v -v -v 1
ADB 命令自动化测试
$echo off
rem 注释shell脚本
adb shell pm list package -3
rem adb shell dumpsys activity|findstr "mfocus"
rem 这个命令我在真机获取不到包名
adb shell dumpsys activity top | find "ACTIVITY"
rem 启动王者荣耀TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 18404
adb shell am start -W -S com.tencent.tmgp.sgame/.SGameActivity
rem 等待20秒
ping 127.0.0.1 -n 38
rem 点击同意,再点击公告,再点击QQ登录
adb shell input tap 1200 826
ping 127.0.0.1 -n 2
adb shell input tap 1810 210
ping 127.0.0.1 -n 2
adb shell input tap 1228 864
ping 127.0.0.1 -n 16
adb shell input tap 774 482
adb shell input text Y
ping 127.0.0.1 -n 2
adb shell input keyevent 67
ping 127.0.0.1 -n 6
adb shell input tap 555 490
adb shell input text "Ygh"
adb shell input keyevent 5555
rem 密码 字符 & 不会输入 同时按住shift+7
adb shell input keyevent 59 3
adb shell input keyevent 14 3
adb shell input text 897564
ping 127.0.0.1 -n 4
Native App:原生APP,基于手机操作系统开发。
Web App:网页APP,基于H5实现,可通过浏览器访问。
Hybrid App:混合型APP,结合原生和网页应用。
问题
D:\\software_customization\\android-sdk-windows\\platform-tools\\adb.exe -P 5037 -s d7ac6a65 shell am start -W -n com.tencent.mobileqq/.activity.LoginActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000
把那串报错内容复制到CMD 中
这样就很清楚:遇到这种错误是因为手机或者模拟器上没有打开某个权限,需要手动打开权限。
npm(nodeJs package manager)是用于安装node应用的包管理工具,用它来安装appium命令行版。
1、检查nodejs和npm环境;
node -v
npm -v
2、检查cnpm安装路径。安装国内cnpm,防止国外无法安装。 使用命令如下:
npm config ls
可以通过 npm config set prefix="你想要的安装目录" 来修改默认安装位置,但不建议
3、安装启动appium 命令(可能需要才能下载哟)
npm install appium -g
4、检查是否可以正常启动
appium
‘appium'不是内部或外部命令,也不是可运行的程序或批处理文件。将npm配置到path环境变量
ACCESSIBILITY_ID:对应为 :content-desc
ID:对应为 :resource-id
XPATH:对应为 :xpath
driver.find_element(AppiumBy.XPATH,"XPATH")
driver.find_element(AppiumBy.ID,"ID")
driver.find_element(AppiumBy.ACCESSIBILITY_ID,"ACCESSIBILITY_ID")