Auto.js Pro 常用指令 大全

本文介绍了移动设备自动化测试中常用的一些函数,如延迟操作sleep,用户界面反馈toast和toastLog,程序终止exit,生成随机数random,启动应用程序launch,以及HTTP请求方法get和post。此外,还涵盖了设备属性如屏幕尺寸(device.width,device.height)和UI交互如滑动(swipe)、点击(click)等。
sleep(n) 
//延时 单位:毫秒  1秒 = 1000毫秒

toast(message) 
//弹窗提示 , 参数: 字符型

toastLog(message) 
//弹窗提示 + 打印日志,参数: 字符型

exit() 
//全局终止运行

random(min, max) 
//取随机数  参数1: 最小值[整数型] ,  参数2: 最大值[整数型]

launch(packageName) 
//启动APP 参数: 字符型 

openUrl(url) 
//打开网址 参数: 字符型

swipe(x1, y1, x2, y2, duration) 
//滑动  注释: 详情参考官方文档

click(text[, i]) 
//点击文本 参数1: 字符型 参数2:序号[整数型]

selector() 
//UiObject 界面对象选择器

back() 
//模拟按下返回键

images.requestScreenCapture([landscape]) 
//向系统申请屏幕截图权限

images.captureScreen() 
//截图

images.findColorEquals(img, color[, x, y, width, height]) 
//区域找色

http.get(url[, options, callback])
//网页访问 get 模式
//详情参数,参考官方例子

http.post(url, data[, options, callback])
//网页访问 post 模式
//详情参数,参考官方例子

device.width 
//取当前设备: 屏幕宽度

device.height 
///取当前设备: 取屏幕高度

threads.start(action) 
//启动线程 参数: 函数名
### Auto.js Pro 使用教程 #### 安装与配置环境 为了使用 Auto.js Pro 进行自动化脚本编写,需先确保设备已安装最新版本的应用程序。对于不同操作系统有不同的安装包可供下载[^1]。 #### 编写基础脚本 Auto.js 支持 JavaScript ES6 语法,因此熟悉该语言有助于快速上手。下面是一个简单的例子来展示如何创建一个基本的自动化任务: ```javascript // 打印日志到控制台 console.log("启动应用程序"); // 设置延时等待时间 (单位毫秒) sleep(2000); // 查找屏幕上特定文本的位置并点击它 if (text("登录").exists()) { text("登录").findOne().click(); } ``` 此段代码会模拟用户行为,在界面上寻找带有 "登录" 文字的对象,并执行一次点击动作。 #### 处理权限请求 某些高级功能可能需要获取额外权限才能正常工作。例如访问联系人列表或发送短信等功能,则必须事先向用户提供清晰说明以及获得同意后方可调用相应 API 接口。 #### 实现复杂交互逻辑 当涉及到更复杂的场景时,比如遍历页面元素、处理弹窗对话框或是与其他应用间切换等操作,可以通过组合多种内置方法达成目的。这里给出一段用于循环读取通知栏消息的小型示范: ```javascript while(true){ let notifications = device.getNotifications(); // 获取当前所有未读通知 if(notifications.length > 0){ console.log(`收到新通知:${notifications[0].title}`); // 对第一个通知做进一步处理... break; // 只处理一条就退出循环 }else{ sleep(500); // 如果没有新的通知则短暂休眠再试 } } ``` 这段代码展示了如何监听来自其他 App 的推送提醒,并作出响应[^3]。 #### 自动生成 ADB 测试脚本 除了直接编写 UI 自动化指令外,还可以利用 adb shell 命令完成更多底层的任务。借助于 `adb` 工具集能够绕过部分安全机制限制,从而实现更加灵活多样的测试方案。以下是通过命令行工具查找指定控件位置并触发触摸事件的方法: ```bash # 寻找包含关键词 'Submit' 的按钮组件 adb shell input tap $(adb shell dumpsys window | grep -Eo '[0-9]+x[0-9]+'|cut -d"x" -f1) \ $(echo "$(adb shell uiautomator dump /sdcard/ui.xml &&\ adb pull /sdcard/ui.xml . && xpath -e '//node[@text="Submit"]/@bounds' ui.xml)"|sed 's/\[//g'|cut -f2|cut -d']' -f1) ``` 上述 Shell 脚本片段实现了无需开启辅助功能服务的情况下定位目标视图坐标点进而模拟手指轻触的效果。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MemroyErHero

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值