Python测试脚本,用python编写测试脚本需要学会什么
一、adb 相关命令:
1.关闭adb服务:adb kill-server。
2.启动adb服务adb启动服务器
3.查询所有当前运行的设备adb设备。
4.adb中可能运行多个虚拟设备。您可以指定运行-s虚拟设备名称的虚拟设备。
5、重启设备adb reboot -指定虚拟设备adb -s的设备名称reboot
6.检查日志adb logcat并清除日志adb logcat -c C。
7.在linux shell下输入adb shell。常用的linux命令cd cat等。输入su以获取超级管理员名称。只要知道是否有命令进入system/bin目录。
8.传入文件被发送到adb的远程目录,推送设备中的本地文件。
9.将文件从设备复制到本地ADB-S仿真器-5556 pull/data/config . ini d :/
10.显示所有当前运行的模拟器:
adb设备
安装应用程序:
adb install -r 123.apk
12.获取模拟器中的文件:
亚行拉远程本地
13.将文件写入模拟器:
adb推送本地远程
14.进入模拟器的外壳模式:
命令行
15.卸载apk包:
命令行
光盘数据/应用程序
rm 123.apk
出口
adb卸载123.apk
adb install -r 123.apk
16、查看adb命令帮助信息:
亚行帮助
17.删除系统应用程序:
Adremount(重新挂载系统分区,使其再次可写)。
命令行
cd系统/应用程序
rm 123.apk
18.获取管理员权限:
亚行根
19.复制文件:
将文件或目录复制到设备:
adb推送来源目的地/目的地/来源
例如adb push update.zip /sdcard/
从设备复制文件或目录:
亚行拉动来源目的地/目的地/来源
例如adbpull/sdcard/update.zip .
20.获取当前正在运行的设备实例列表以及每个实例的状态:
adb设备
21、亚行外壳输入抽头
这个命令模拟Android手机点击屏幕坐标(X,Y)。
22、亚行外壳输入刷卡
这个命令模拟Android手机从屏幕坐标(X1,Y1)滑动到坐标(X2,Y2)的操作。
23.UIAutomator Dump Dump :创建当前UI层次结构的XML转储。该命令用于形成当前界面的UI层次结构,并以XML格式显示。通过这种方式,可以获得每个组件的位置。
注意:PC要想同时控制多部安卓手机,必须在adb后面加-s。
示例:ADB-s13b6e4c4shell输入抽头400 400
代表模拟13b6e4c4安卓手机屏幕上(400,400)坐标位置的点击事件。
24.您可以看到设备信息,这意味着设备已成功连接。下一个命令是adb安装路径包名. apk。
比如我的安装包放在桌面上,那么命令就是ADB install c : \ users \ hyh \ desktop \ XXX . apk。
* * * ADB shell ui automator dump/mnt/s
dcard/window_dump.xml 获得手机当前界面的UI信息,生成window_dump.xml
*** adb shell input text “123” 输入text
举例:
1、打开cmd,进入到当前文件夹中,输入命令 adb devices 查看当前与电脑连接的设备(前提是,手机打开usb调试模式),可以查看已连接成功的手机。
2、若手机成功连接,输入命令 adb shell input tap 100 100 , 表示点击屏幕上坐标为(100,100)的点,如果不知道需要点击的点的具体位置的话可以在手机开发者模式中设置。
相关推荐:《Python基础教程》
二、adb 模拟按键:
1. 比如使用 adb shell input keyevent <keycode> 命令,不同的 keycode 能实现不同的功能,完整的 keycode 列表详见 KeyEvent,摘引部分我觉得有意思的如下:
2. input 命令的一些用法举例
电源键
命令:
adbshellinputkeyevent26执行效果相当于按电源键。
菜单键
命令:
adbshellinputkeyevent82HOME 键
命令:
adbshellinputkeyevent3返回键
命令:
adbshellinputkeyevent4音量控制
增加音量:
adbshellinputkeyevent24降低音量:
adbshellinputkeyevent25静音:
adbshellinputkeyevent164媒体控制
播放/暂停:
adbshellinputkeyevent85停止播放:
adbshellinputkeyevent86播放下一首:
adbshellinputkeyevent87播放上一首:
adbshellinputkeyevent88恢复播放:
adbshellinputkeyevent126暂停播放:
adbshellinputkeyevent127点亮/熄灭屏幕
可以通过上文讲述过的模拟电源键来切换点亮和熄灭屏幕,但如果明确地想要点亮或者熄灭屏幕,那可以使用如下方法。
点亮屏幕:
adbshellinputkeyevent224熄灭屏幕:
adbshellinputkeyevent223三、使用python脚本自动运行cmd命令
在adb文件夹下建立一个python文件
importos运行脚本,发现与在命令行输入相同语句有同样的效果。os.system('adbshellinputtap100100');
也可以使用subprocess.Popen,最简单使用方式如下,设置shell=True,就不会弹出cmd框
process=subprocess.Popen('adbshellinputtap141402',shell=True)程序实例:
#coding:utf-8实现原理#程序功能:可以实现抖音个人页面视频的自动点击,从而自动增加访问量
#思路:抖音主页中两个视频切换点击,可以实现访问量的增加
#使用ADB程序,视频的屏幕坐标可以使用adbshelluiautomatordump命令,获取该页面xml源码后查得
#下述是小米MIX2抖音主页第一个视频和第二个视频的坐标位置
#缺点:运行时不能移动屏幕,后续可以采用获取模块ID号的方式去点击相应的位置
importtime
importsubprocess
i=0
#每次操作的间隔时间取决于手机配置,配置越高时间越短
sleep_time=0.5
while1:
#用popen设置shell=True不会弹出cmd框
process=subprocess.Popen('adbshellinputtap141402',shell=True)
time.sleep(sleep_time)
process=subprocess.Popen('adbshellinputkeyeventKEYCODE_BACK',shell=True)
time.sleep(sleep_time)
process=subprocess.Popen('adbshellinputtap3751402',shell=True)
time.sleep(sleep_time)
process=subprocess.Popen('adbshellinputkeyeventKEYCODE_BACK',shell=True)
time.sleep(sleep_time)
#os.system('adbshellinputtap141402')
#os.system('adbshellinputkeyeventKEYCODE_BACK')
#os.system('adbshellinputtap3751402')
i+=1
printstr(i)+'clickshavebeencompleted'
Hierarchy Viewer:获得当前手机实时的UI信息,方便用于手机的自动化测试;
python中的subprocess.Popen() 或 Python os模块:调用系统命令;
uiautomator工具:获取界面控件信息;
adb命令:对手机进行操作;
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。