Auto.js

本文深入探讨了Auto.js在移动应用自动化测试中的应用,包括控件属性分析、屏幕操作如点击、滑动,以及应用控制如打开、关闭和等待。讲解了如何利用布局范围分析获取控件的bounds信息,实现精确的点击和滑动操作,还涉及到了设备的交互功能如振动和屏幕亮度控制。此外,文中还提到了变量声明、数组操作和随机数生成等基本编程概念。

查找信息

Auto.js悬浮窗后选择出现的蓝色按钮(查看控件信息的功能 ),点击布局范围分析后选择领喵币按钮查看控件信息

text控件的文本属性,

bounds控件的边框位置,

desc控件的desc值,有些控件会把text控件放空,并把上面的文本写入desc值。

clickable/longClickable控件是否可以点击/长按,

如果控件的clickable为false那么点击也没用。

checked控件是否选中,depth在第几层次 

device.width

        手机屏幕分辨率宽度,单位像素。

var a=device.width;

log(a);

        这段代码运行之后,会在日志打印出当前手机屏幕宽度。

var声明变量

var 变量名=值;

var 变量名=new 数据类型(传入值);    

数字型(Number),布尔型(Boolean),字符串型(String),其他还有 不明(Undefined),空(null)等 

auto.waitFor()
var appName = "手机淘宝";              
launchApp(appName);
sleep(3000);
//寻找领喵币按钮并点击
var lingmiaobi = text("领喵币").findOnce();
if (lingmiaobi) {
    lingmiaobi.click();
    sleep(1000);
}
else {
    toast("未检查到领喵币按钮");
    //中止脚本
    exit();
}

等待

参数毫秒  1s=1000ms

sleep(1000);

打开应用

var appName = "拼多多";                //进行应用名赋值
launchApp(appName);                       //打开应用

sleep(3000);                                        //等待3秒打开时间

app.uninstall(packageName);                     //卸载应用

app.openUrl(url);                                         //打开网址url

当我们抢到时,使用textContains(“购物车”).findOne()查找页
面中含购物车的按钮,并用bound()函数获取其位置信息,之后press就可以。

点击

press(x,y,t),点击坐标,第三个设置点击时常,单位是毫秒2s,press(500,500,2000); 

click(1000,150); 默认是点击时常150ms。1000,150为手机坐标点

屏幕滑动操作

swipe(x1,x2,y1,y2,t);前两个为,设置滑动开始的点的坐标,第三四个为设置滑动终止的点的坐标,第五个为滑动总消耗的时间长短。举个例子,从屏幕100,300滑动至600,900总耗时花1秒为:swipe(100,300,600,900,1000);

gesture是指屏幕滑动操作

gesture(duration, [x1, y1], [x2, y2]);

表示用duration的时间(毫秒),从(x1,y1)点滑到(x2,y2)点,x.y指距离左上点的屏幕像素点距离

gestures单指滑动

gestures多指滑动

"auto";

/**
 * 同时模拟三个手势:
 * 从(300, 400)到(300, 1400)
 * 从(600, 400)到(600, 1400)
 * 从(900, 400)到(900, 1400)
 * 每一个的时长都为350毫秒
 */

gestures([350, [300, 400], [300, 1400]],
         [350, [600, 400], [600, 1400]],
         [350, [900, 400], [900, 1400]]
);

back()模拟返回键

home();模拟home键

random(min,max);

        随机数,随机生成min和max之间的一个整数。输入min最小数,max最大数。  比如random(0,2);返回0,1,2中任意一个。 

device.vibrate(millis);

        让手机振动输入millis为要振动的时间,单位是毫秒,比如振动一秒的代码为:device.vibrate(1000); 

device.keepScreenOn(time);

        让手机屏幕保持常亮,输入要保持常亮的时间time单位是毫秒,不输入则为永远。

setClip(text);

        设置手机剪贴板的内容,输入要设置的文字text字符串。

getClip()

        获取手机剪贴板内容,返回手机剪贴板上的文字,字符串。

log("a");             打印字母a

数组

var arr=[2,3,4,5];

//输出下标为2的内容,即第三个·

log(arr(2));                        //打印数组

//输出信息3

arr[0]=6;                                //对数组赋值

log(arr);

控件的bounds属性
在Auto.js软件提供的布局范围分析中,可以获取一个控件的坐标范围
控件属性bounds(left, top, right, buttom)

left {number} 控件左边缘与屏幕左边的距离
top {number} 控件上边缘与屏幕上边的距离
right {number} 控件右边缘与屏幕左边的距离
bottom {number} 控件下边缘与屏幕上边的距离
 

03-20
<think>好的,用户想了解Auto.js的使用指南和下载方法。首先,我需要回忆一下之前提供的引用内容,看看有没有相关的信息。 引用[1]提到了通过菜单“查看”→“命令面板”→“Auto.js: Run On Device”来运行,需要Auto.js处于活动状态。这可能涉及到安装步骤。引用[2]虽然提到autoComplete.js,但可能和Auto.js无关,需要注意区分。引用[3]详细介绍了雷电模拟器的安装和使用,以及VScode编辑器的配置,还提到了Auto.js 4.1.0的文档,这可能对用户有帮助。 用户需要的是使用指南和下载方法。根据引用[1]和[3],Auto.js可能需要通过特定步骤安装,比如在模拟器中使用。引用[3]还提到雷电模拟器的安装,可能Auto.js是在模拟器上运行的。可能需要指导用户下载模拟器,然后安装Auto.js应用。 需要注意的是,用户可能混淆了autoComplete.js(引用[2])和Auto.js,需要明确指出两者的不同。确保用户获取正确的信息。 接下来,分步骤回答:下载方法、安装步骤、使用指南。引用中的信息需要正确对应,比如引用[3]中的雷电模拟器安装和Auto.js的环境搭建。同时,提醒用户注意版本兼容性和安全来源,避免下载恶意软件。 最后,生成相关问题,帮助用户深入了解,比如版本差异、模拟器配置、常见错误解决等。</think>关于Auto.js的使用指南和下载方法,以下是关键信息整理: ### 一、Auto.js下载方法 1. **安卓设备直接安装** 通过第三方应用市场(如酷安)搜索`Auto.js 4.1.0`版本(开源版本),注意需允许安装未知来源应用。 2. **模拟器安装** 推荐使用雷电模拟器(下载地址:[ldmnq.com](https://www.ldmnq.com)),安装后通过共享文件夹或浏览器下载Auto.js APK文件[^3]。 ### 二、Auto.js环境搭建步骤 1. **基础配置** - 在雷电模拟器中启用`Root权限`和`ADB调试`(设置→性能设置→开启虚拟化技术)。 - 通过VSCode安装`Auto.js-VSCodeExt`插件,连接模拟器IP地址实现代码同步[^3]。 2. **代码运行流程** ```javascript // 示例:点击屏幕坐标(500,500) auto.waitFor(); click(500, 500); ``` 通过VSCode命令面板选择`Auto.js: Run On Device`执行脚本[^1]。 ### 三、使用注意事项 - **版本差异**:Auto.js 4.1.0为开源免费版,后续闭源版本(如Pro版)需付费且功能受限。 - **安全提示**:建议仅从可信来源下载APK,避免恶意软件。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值