前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >appium+python自动化38-adb按键操作(keyevent)

appium+python自动化38-adb按键操作(keyevent)

作者头像
上海-悠悠
发布于 2018-07-25 07:46:35
发布于 2018-07-25 07:46:35
2K00
代码可运行
举报
运行总次数:0
代码可运行

前言

接着上篇介绍input里面的按键操作keyevent事件,发送手机上常用的一些按键操作

keyevent

1.keyevent事件有一张对应的表,可以直接发送对应的数字,也可以方式字符串,如下两个方法都能实现back键。打开cmd输入指令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 方法一:
> adb shell input keyevent KEYCODE_BACK

# 方法二:
> adb shell input keyevent 4

2.常用的keyevent事件

  • 解锁(KEYCODE_NOTIFICATION): adb shell input keyevent 83
  • 向上(KEYCODE_DPAD_UP):adb shell input keyevent 19
  • 向下(KEYCODE_DPAD_DOWN):adb shell input keyevent 20
  • 向左(KEYCODE_DPAD_LEFT):adb shell input keyevent 21
  • 向右(KEYCODE_DPAD_RIGHT):adb shell input keyevent 22

keyevent事件对应数字

0 –> “KEYCODE_UNKNOWN” 1 –> “KEYCODE_MENU” 2 –> “KEYCODE_SOFT_RIGHT” 3 –> “KEYCODE_HOME” 4 –> “KEYCODE_BACK” 5 –> “KEYCODE_CALL” 6 –> “KEYCODE_ENDCALL” 7 –> “KEYCODE_0” 8 –> “KEYCODE_1” 9 –> “KEYCODE_2” 10 –> “KEYCODE_3” 11 –> “KEYCODE_4” 12 –> “KEYCODE_5” 13 –> “KEYCODE_6” 14 –> “KEYCODE_7” 15 –> “KEYCODE_8” 16 –> “KEYCODE_9” 17 –> “KEYCODE_STAR” 18 –> “KEYCODE_POUND” 19 –> “KEYCODE_DPAD_UP” 20 –> “KEYCODE_DPAD_DOWN” 21 –> “KEYCODE_DPAD_LEFT” 22 –> “KEYCODE_DPAD_RIGHT” 23 –> “KEYCODE_DPAD_CENTER” 24 –> “KEYCODE_VOLUME_UP” 25 –> “KEYCODE_VOLUME_DOWN” 26 –> “KEYCODE_POWER” 27 –> “KEYCODE_CAMERA” 28 –> “KEYCODE_CLEAR” 29 –> “KEYCODE_A” 30 –> “KEYCODE_B” 31 –> “KEYCODE_C” 32 –> “KEYCODE_D” 33 –> “KEYCODE_E” 34 –> “KEYCODE_F” 35 –> “KEYCODE_G” 36 –> “KEYCODE_H” 37 –> “KEYCODE_I” 38 –> “KEYCODE_J” 39 –> “KEYCODE_K” 40 –> “KEYCODE_L” 41 –> “KEYCODE_M” 42 –> “KEYCODE_N” 43 –> “KEYCODE_O” 44 –> “KEYCODE_P” 45 –> “KEYCODE_Q” 46 –> “KEYCODE_R” 47 –> “KEYCODE_S” 48 –> “KEYCODE_T” 49 –> “KEYCODE_U” 50 –> “KEYCODE_V” 51 –> “KEYCODE_W” 52 –> “KEYCODE_X” 53 –> “KEYCODE_Y” 54 –> “KEYCODE_Z” 55 –> “KEYCODE_COMMA” 56 –> “KEYCODE_PERIOD” 57 –> “KEYCODE_ALT_LEFT” 58 –> “KEYCODE_ALT_RIGHT” 59 –> “KEYCODE_SHIFT_LEFT” 60 –> “KEYCODE_SHIFT_RIGHT” 61 –> “KEYCODE_TAB” 62 –> “KEYCODE_SPACE” 63 –> “KEYCODE_SYM” 64 –> “KEYCODE_EXPLORER” 65 –> “KEYCODE_ENVELOPE” 66 –> “KEYCODE_ENTER” 67 –> “KEYCODE_DEL” 68 –> “KEYCODE_GRAVE” 69 –> “KEYCODE_MINUS” 70 –> “KEYCODE_EQUALS” 71 –> “KEYCODE_LEFT_BRACKET” 72 –> “KEYCODE_RIGHT_BRACKET” 73 –> “KEYCODE_BACKSLASH” 74 –> “KEYCODE_SEMICOLON” 75 –> “KEYCODE_APOSTROPHE” 76 –> “KEYCODE_SLASH” 77 –> “KEYCODE_AT” 78 –> “KEYCODE_NUM” 79 –> “KEYCODE_HEADSETHOOK” 80 –> “KEYCODE_FOCUS” 81 –> “KEYCODE_PLUS” 82 –> “KEYCODE_MENU” 83 –> “KEYCODE_NOTIFICATION” 84 –> “KEYCODE_SEARCH” 85 –> “TAG_LAST_KEYCODE”

封装keyevent事件

text输入文本

1.adb也可以输入文本

adb shell input text yoyoketang

注意:中文是没法输入的,比如:上海-悠悠

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 从零开始学自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
自动化-Appium-常用API(Python版)
driver.remove_app('com.example.android.apis')
wangmcn
2022/07/25
1.5K0
『App自动化测试之Appium应用篇』| Appium常用API及操作
虫无涯
2024/01/02
1.1K0
adb命令大全,保存以备参考
adb root //restarts adb with root permissions
孟船长
2023/12/14
4890
adb命令大全,保存以备参考
appium+python自动化39-adb输入中文(ADBKeyBoard)
上一篇提到“adb shell input textyoyo“ 可以通过adb 输入英文的文本,由于不支持unicode编码,所以无法输入中文,github上有个国外的大神写了个ADBKeyBoard输入法的apk,完美支持unicode编码,也能输入中文和其它字符了
上海-悠悠
2018/07/25
2.6K0
appium+python自动化39-adb输入中文(ADBKeyBoard)
andriod 手机按键检测事件 onKeyDown() 简述
函数原型: public boolean onKeyDown(int keyCode, KeyEvent event); 第一个参数是用户按下键时,当前所接收到的按键代号; 第二个参数是按键事件的对象
林冠宏-指尖下的幽灵
2018/01/03
1.3K0
安卓测试常用的 ADB 命令
    adb的工作方式比较特殊采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行Eclipse时adb进程就会自动运行。  1.通过adb可以轻松的执行Linux Shell命令,如adb shell dir 就是列举目录,在Linux中根目录为/而不是Windows上的C盘、D盘。  2.安装apk程序到模拟器则执行adb install android123.apk,这样名为android123的安装包就会安装到Android模拟器中,前提是android123.apk文件需要放到SDK/Tools目录下。  3.向emulator传送文件, 使用adb push android123.txt /tmp/android123.txt命令可以把SDK/Tools下的android123.txt文件传输到模拟器的/tmp/文件夹中,需要注意的是/tmp/文件夹中内容会在Android模拟器重新启动时清空。  4.从Android仿真器中回传文件到电脑 
测试之道
2021/03/04
5.1K0
机器人编程趣味实践06-程序(节点)
每敲击一行指令,开启一个或多个程序,具体介绍参考(ROS 2节点-nodes-)。
zhangrelay
2021/12/02
4180
机器人编程趣味实践06-程序(节点)
自动化-Appium-常用API(Java版)
本章节讲解默认使用Appium Clients为java-client-6.1.0.jar包,对应的Selenium使用selenium-server-standalone-3.12.0.jar包。
wangmcn
2022/07/25
1.9K0
自动化-Appium-常用API(Java版)
必须掌握的ADB命令 | 让你的测试事半功倍
ADB的全称是Android Debug Bridge,是一个与模拟器或者连接设备通讯的桥梁。ADB是CS结构包含三个部分:
京东技术
2018/07/30
8.6K0
必须掌握的ADB命令 | 让你的测试事半功倍
android adb shell 常用命令
mac: /Users/xx/Library/Android/sdk/tools/bin archquery jobb monkeyrunner sdkmanager avdmanager lint screenshot2 uiautomatorviewer
tea9
2022/09/08
3.5K0
android自动化之monkeyrunner
运行monkeyrunner之前必须先运行相应的模拟器或连上设备,不然monkeyrunner无法连接设备。
流柯
2018/08/30
1.1K0
android自动化之monkeyrunner
从门外汉到开发出TV应用,我只用了三天
在这之前,本人一直从事Android手机应用层的开发。从没有接触过Android TV端的开发工作。当领导问能否在一周内做出一个TV端Demo时,自己心里还很是比较虚的。但是实际上,从开始调研到动手做到最后将Demo给领导演示出来,花了不超过3天的时间。当然这三天,每天都是做到晚上11点以后的(大部分时间是解决一些细节问题)。功能相当于是KEEP训练跟练的TV版,业务交互还是有一些难点的。当领导对你的Demo表示认可后,接下来等产品和设计师完整的出了TV端产品的整个UI和设计,我们就开始正式的进入TV端产品的搭建过程。
吴延宝
2019/07/24
3.7K0
Android自动化测试探索(一)adb详细介绍
adb,即Android Debug Bridge,它是Android开发/测试人员不可替代的强大工具
周希
2019/10/15
2.7K0
appium+python自动化37-adb模拟点击事件(input tap)
appium有时候定位一个元素很难定位到,或者说明明定位到这个元素了,却无法点击,这个时候该怎么办呢? 求助大神是没用的,点击不了就是点击不了,appium不是万能的,这个时候应该转换思路,换其它的方法去点击,比如我们可以用adb去执行点击事件
上海-悠悠
2018/07/25
2.7K0
appium+python自动化37-adb模拟点击事件(input tap)
几款Android 应用自动化测试工具「建议收藏」
常规类参数 1、 -help 作用:列出简单的用法 例:adb shell monkey -help 也可不写help 2、-v 作用:命令行上的每一个-v都将增加反馈信息的详细级别。 Level0(默认),除了启动、测试完成和最终结果外只提供较少的信息。 adb shell monkey -p com.shjt.map -v 100 Level1,提供了较为详细的测试信息,如逐个发送到 Activity 的事件信息。 adb shell monkey -p com.shjt.map -v -v 100 Level2,提供了更多的设置信息,如测试中选中或未选中的 Activity 信息。 adb shell monkey -p com.shjt.map -v -v -v 100 比较常用的是-v -v -v,即最多详细信息,一般会保存到指定文件中供开发人员查找bug原因时使用。 例:adb shell monkey -v 10 事件类参数 1、-s <seed> 作用:伪随机数生成器的seed值。如果用相同的seed值再次运行monkey,将生成相同的事件序列。 例:adb shell monkey -s 1483082208904 -v 10 2、–throttle <milliseconds> 作用:在事件之间插入固定的时间(毫秒)延迟,你可以使用这个设置来减缓Monkey的运行速度,如果你不指定这个参数,则事件之间将没有延迟,事件将以最快的速度生成。 注:常用参数,一般设置为300毫秒,原因是实际用户操作的最快300毫秒左右一个动作事件,所以此处一般设置为300毫秒。 例:adb shell monkey –throttle 300 -v 10 3、–pct-touch <percent> 作用:调整触摸事件的百分比。(触摸事件是指在屏幕中的一个down-up事件,即在屏幕某处按下并抬起的操作) 注:常用参数,此参数设置要适应当前被测应用程序的操作,比如一个应用80%的操作都是触摸,那就可以将此参数的百分比设置成相应较高的百分比。 例:adb shell monkey –pct-touch 100 -v 10 4、–pct-motion <percent> 作用:调整motion事件百分比。(motion事件是由屏幕上某处一个down事件、一系列伪随机的移动事件和一个up事件组成) 注:常用参数,需注意的是移动事件是直线滑动 例:adb shell monkey –pct-motion 100 -v 10 5、–pct-trackball<percent> 作用:调整滚动球事件百分比。(滚动球事件由一个或多个随机的移动事件组成,有时会伴随着点击事件) 注:不常使用参数,现在手机几乎没有滚动球,但滚动球事件中包含曲线滑动事件,在被测程序需要曲线滑动时可以选用此参数。 例:adb shell monkey –pct-trackball 100 -v 10 6、–pct-nav<percent> 作用:调整基本的导航事件百分比。(导航事件由方向输入设备的上下左右按键所触发的事件组成) 注:不常用操作。 例:adb shell monkey –pct-nav 100 -v 10 7、–pct-majornav<percent> 作用:调整主要导航事件的百分比。(这些导航事件通常会导致UI界面中的动作事件,如5-way键盘的中间键,回退按键、菜单按键) 注:不常用操作。 例:adb shell monkey –pct-majornav 100 -v 10 8、–pct-syskeys<percent> 作用:调整系统事件百分比。(这些按键通常由系统保留使用,如Home、Back、Start Call、EndCall、音量调节) 注:不常用。 例:adb shell monkey –pct-syskeys 100 -v 10 9、–pct-appswitch<percent> 作用:调整Activity启动的百分比。(在随机的时间间隔中,Monkey将执行一个startActivity()调用,作为最大程度覆盖被测包中全部Activity的一种方法) 注:不常用。 例:adb shell monkey –pct-appswitch 100 -v 5 10、–pct-anyevent 作用:调整其他事件的百分比。(这包含所有其他事件,如按键、其他在设备上不常用的按钮等) 注:不常用。 例:adb shell monkey –pct-anyevent 100 -v 5 约束类参数 1、-p<allowed-package-nam
全栈程序员站长
2022/07/27
8K0
几款Android 应用自动化测试工具「建议收藏」
Appium+python自动化(二十三)- 真假美猴王Monkeyrunner与Monkey傻傻的分不清楚
看《西游记》第五十七回,说是“六耳猕猴”化作孙悟空的摸样,伤了唐僧,后又和孙悟空大打出手…… 这位假孙悟空,实力不用多说了吧,和真孙悟空一般无二,大战孙悟空,闹到上天入地下海。 在唐僧那:念紧箍咒,两个都喊疼,自然看不出哪个真假; 到天宫:拖塔天王拿照妖镜照,也看不出; 又到观音那:观音也看不出。最后到幽冥处阎罗那,经“谛听”听过之后,“谛听”却说:“我看出来了,却不敢说” 最后还是如来老佛爷道出六耳真身并用金钵盂罩住,才被孙悟空一棍子打死。想必各位小伙伴都看过这以精彩片段。不过据知情人士说真假美猴王存在阴谋,这里有黑幕:说是真的孙悟空被打死了,活下来的是假的。好了废话少说,还是回到今天的主题:真假美猴王Monkeyrunner与Monkey傻傻的分不清楚。
北京-宏哥
2019/07/27
1.6K0
Appium+python自动化(二十)- 猴哥失散多年的混血弟弟还是妹妹- Monkey猴子日志
  日志是非常重要的,用于记录系统、软件操作事件的记录文件或文件集合,可分为事件日志和消息日志。具有处理历史数据、诊断问题的追踪以及理解系统、软件的活动等重要作用,在开发或者测试软系统过程中出现了问题,我们首先想到的就是她——logging。她可不像泰戈尔说的:“天空没有留下翅膀的痕迹,但我已经飞过”;Monkey这个小姑娘,她可是一个爱炫耀,爱显摆的人已经达到了人过留名、雁过留声的境界。只要我们按图索骥就一定可以定位到问题所在,然后分析问题,解决问题。好了逗大家一乐,下面开始进入今天的正题。
北京-宏哥
2019/07/19
1.2K0
推荐阅读
相关推荐
自动化-Appium-常用API(Python版)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文