使用apk来自动化测试,需要手机有root权限,所以采用写java程序,利用adb shell来实现自动化测试。

一、所需知识

最基础的adb shell 指令。input tab 等。

二、所需环境
硬件:一台电脑、一部手机、一根数据线。软件:jdk、adb工具
三、编码

功能:模拟用户打开微信,并进行搜索就这么完成了。其实这里用shell命令模拟用户操作还是有些问题的,比如说控件长按(sendevent),好难理解,而且需要跟其中传递的控件坐标参数应该要跟屏幕分辨率联系起来,实际应用范围不是很广泛 。

private String[] search = {//  "adb shell",//    "sleep 3","input keyevent 3",// 返回到主界面,数值与按键的对应关系可查阅KeyEvent"sleep 1",// 等待1秒"am start -n com.tencent.mm/com.tencent.mm.ui.LauncherUI",// 打开微信的启动界面,am命令的用法可自行百度、Google"sleep 3",// 等待3秒"am start -n com.tencent.mm/com.tencent.mm.plugin.search.ui.SearchUI",// 打开微信的搜索"input text 123",// 像搜索框中输入123,但是input不支持中文,蛋疼,而且这边没做输入法处理,默认会自动弹出输入法};public static void main(String[] args) throws AWTException,         InterruptedException, IOException{TencentTest tencentTest = new TencentTest();//如果input text中有中文,可以将中文转成unicode进行input,没有测试,只是觉得这个思路是可行的tencentTest.search[5] = tencentTest.chineseToUnicode(tencentTest.search[5]);tencentTest.execShell(tencentTest.search);}

完整代码下载:  TencentTest.java

效果图如下:

 

自动化方法模拟Android手机点击、触屏事件相关推荐

  1. 手机屏幕纸java_使用Java自动化方法模拟Android手机点击、触屏事件

    最近有一个测试需求,需要重复性的滑动手机.对手机进行触摸.点击操作等,所以就需要实现一个Android模拟人工操作的功能.一开始想写一个APK,但在实现过程中遇上了麻烦,好像需要系统应用权限等,笔者本 ...

  2. 使用Java自动化方法模拟Android手机点击、触屏事件

    最近有一个测试需求,需要重复性的滑动手机.对手机进行触摸.点击操作等,所以就需要实现一个Android模拟人工操作的功能.一开始想写一个APK,但在实现过程中遇上了麻烦,好像需要系统应用权限等,笔者本 ...

  3. delphi XE模拟Android手机PDA设备的虚拟键盘按键及扫码过程输入焦点及信号接收

    delphi XE模拟Android手机PDA设备的虚拟键盘按键及扫码过程输入焦点及信号接收 今天,群里有几位同学讨论这个问题,汇总了一下,分享出来,供同学们学习研究. 一.直接上代码示例 1.屏蔽应 ...

  4. js 原生方法 -- 模拟浏览器的 点击事件

    js 原生方法 – 模拟浏览器的 点击事件 1. 创建自定事件并监听 可看看 MDN 的 Evnet, CustomEvent 对象 <!DOCTYPE html> <html la ...

  5. 手机屏幕物理点击器是什么原理_触屏手机为什么能触屏原理是什么

    展开全部 触摸屏由触摸检测部件和触摸屏控制器组成:触摸检测部件安装在显示器屏幕前面,用于检测用户触摸位置e68a84e8a2ad62616964757a686964616f31333431346465 ...

  6. Unity Android手机触屏事件

    一: 下面先说经常用的三个事件 手指按下.手指移动.手指松开 1. 手指按下 if(input.touchCount==1) {if(input.touches[0].phase==TouchPhas ...

  7. Unity Android手机触屏事件

    一: 下面先说经常用的三个事件 手指按下.手指移动.手指松开 1. 手指按下 if(input.touchCount==1) {if(input.touches[0].phase==TouchPhas ...

  8. Android 中Touch(触屏)事件传递机制

    版本:2.0 日期:2014.3.21 2014.3.29 版权:© 2014 kince 转载注明出处 一.基本概念 在实际开发中,经常会遇到与触屏事件有关的问题,最典型的一个就是滑动冲突.比如在使 ...

  9. android 触摸 事件,Android触屏事件和MotionEvent详解

    Android屏幕操作 屏幕是用户和Android设备交互的主要媒介,屏幕分为触屏和非触屏.Android设备目前有四种类型:Android Phone,Android Tablet,Android ...

最新文章

  1. windows7 php 无法启动服务,windows update服务无法启动怎么解决?
  2. linux下configure命令详解
  3. 零基础学Python(第九章 循环控制【break】与【continue】)
  4. 【不屈】生如蝼蚁,当立鸿鹄之志
  5. 随机森林需要分训练集测试集吗_讨论记录用随机森林对生存数据降维,筛选signature...
  6. 【bzoj 4455】小星星(树型DP+容斥原理+dfs建树和计算的2种方式)
  7. linux跟踪函数代码,linux ltrace-跟踪进程调用库函数的情况
  8. 程序员教你如何用python制作一个牛逼的脚本
  9. badboy设置中文_badboy基本操作
  10. 小程序错误:Setting data field collected to undefined is invalid.
  11. excel vba如何在不打开的情况下获取.pdf文件的打印页码数
  12. Python print 玩转点阵字
  13. ZOJ 3587 Marlon's String
  14. 计算机一级b选择题相关知识点,一级B辅导资料(选择题知识点)
  15. 汇编语言程序教程:从入门到精通!
  16. MCU驱动和RGB驱动的液晶屏的区别
  17. 抽烟行为识别预警系统 yolov5
  18. 企业微信后台模板导入覆盖机制
  19. ubuntu 18.04下greenplum安装笔记(一)Linux下基础环境的搭建
  20. git rebase解决冲突

热门文章

  1. pajek02:点、线、方向、数值和增删改操作(创建“全数弧”随机社会网络)
  2. EMC防护设计-浪涌
  3. php判断caj文件页数,CAJ转PDF有哪些免费不限页数的方法?
  4. 区块链防伪溯源系统,焕发电商行业新生机
  5. L2-037 包装机 - java
  6. 东 北 大 学( 电机拖动X)离线作业
  7. KUKA的Officelite虚拟机运行EthernetKRL3.0成功通讯
  8. L298N 直流电机驱动模块与 Arduino
  9. 原生JS实现轮播图插件
  10. 送书福利 |《趣味编程三剑客:从Scratch迈向Python和C++》