原来AUTO拟写脚本页面测试控件是否存在或数量多少 便于点击 分享给会用的人
[JavaScript] 纯文本查看 复制代码 // 点击指定位置 (坐标:996, 322)
click(996, 322);
// 等待加载
for (DDSJ = 1; DDSJ < 11; DDSJ++) {
sleep(1000); // 暂停1秒
log("加载等待"); // 记录加载等待状态
}
/*
以下是一些用于查找控件的示例条件:
text = 去抢购 // 查找文本为 "去抢购" 的控件
className = android.widget.Image // 查找类名为 "android.widget.Image" 的控件
text = 20210417024537920f21923 // 查找文本为指定字符串的控件
*/
/*
以下是一些控件选择器示例:
className("android.widget.TextView") // 查找类名为 "android.widget.TextView" 的控件
className("android.widget.EditText") // 查找类名为 "android.widget.EditText" 的控件(输入框)
className("android.view.View") // 查找类名为 "android.view.View" 的控件
className("android.widget.ImageView") // 查找类名为 "android.widget.ImageView" 的控件
className("android.webkit.WebView") // 查找类名为 "android.webkit.WebView" 的控件(广告视频)
indexInParent("2") // 查找在父控件中的索引为2的控件
id = img_open // 查找ID为 "img_open" 的控件
id = container // 查找ID为 "container" 的控件
text = btn-zf // 查找文本为 "btn-zf" 的控件
className = android.view.View // 查找类名为 "android.view.View" 的控件
indexInParent = 3 // 查找在父控件中的索引为3的控件
indexInParent = 2 // 查找在父控件中的索引为2的控件
className("android.widget.RelativeLayout").findOne().click() // 查找第一个 "android.widget.RelativeLayout" 类型的控件并点击
text = 账号密码登录 // 查找文本为 "账号密码登录" 的控件
desc = 去兑换 // 查找描述为 "去兑换" 的控件
packageName = uni.UNI680DC45 // 查找包名为 "uni.UNI680DC45" 的控件
packageName("com.pingou.life") // 查找包名为 "com.pingou.life" 的控件
*/
// 定义控件变量
// 根据控件的类名和在父控件中的索引查找控件
var 控件 = className("android.view.View").indexInParent("2");
// 输出符合条件的控件数量
log(控件.find().size()); // 输出符合条件的控件数量
// 如果找到4个控件,点击第四个控件
log("if(" + 控件 + ".find().size()==4){" + 控件 + ".find().get(3).click();}")
// 如果控件存在,点击第一个符合条件的控件
if (控件.exists()) {
控件.findOne().click(); // 点击第一个符合条件的控件
}
log("if(" + 控件 + ".exists()){" + 控件 + ".findOne().click();}") // 输出点击第一个控件的代码
// 以下是一些备用代码示例,用于操作不同层级的控件
// 点击子控件
// 控件.findOne().child().click();
// 点击第三个符合条件的控件
// 控件.find().get(2).click();
// 点击父控件
// if (控件.exists()) { 控件.findOne().parent().click(); }
// log("if(" + 控件 + ".exists()){" + 控件 + ".findOne().parent().click();}")
// 点击父父控件
// 控件.findOne().parent().parent().click();
// 点击子控件
// 控件.findOne().child().click();
// 显示找到的第一个控件内容
// log(控件.find()); // 输出所有符合条件的控件
// log(控件.find().get(0)); // 输出第一个符合条件的控件
// log(控件.find().get(0).exists()); // 检查第一个控件是否存在
// 显示找到的第二个控件内容
// log(控件.find().get(1)); // 输出第二个符合条件的控件
// log(控件.find().get(1).exists()); // 检查第二个控件是否存在
// log(控件 + ".find().get(1).click();"); // 输出点击第二个控件的代码
// log(className("android.widget.EditText").find().size() == 2); // 检查输入框数量是否为2
// 获取控件中心位置并点击
// var KJ1 = className("android.widget.RelativeLayout").findOne(); // 查找第一个 "android.widget.RelativeLayout" 类型的控件
// click(KJ1.bounds().centerX(), KJ1.bounds().centerY()); // 点击该控件的中心位置
// 设置输入框的文本
/*
var editOne = textContains("说点").find().get(0); // 获取第一个包含 "说点" 文本的输入框
var x = editOne.bounds().centerX(); // 获取输入框中心位置的X坐标
var y = editOne.bounds().centerY(); // 获取输入框中心位置的Y坐标
editOne.setText("222"); // 设置输入框的文本为 "222"
*/
// 点击购物车按钮
// desc("购物车").id("button_cart_charge").findOne().click(); // 查找描述为 "购物车" 且ID为 "button_cart_charge" 的控件并点击
// 控件.findOne().click(); // 点击第一个符合条件的控件
// 控件.findone().parent().click(); // 点击第一个符合条件控件的父控件
// 处理退货商品的操作
/*
while (text("请选择退货商品").exists()) { // 如果存在 "请选择退货商品" 文本的控件
textContains("库存").findOne().click(); // 点击包含 "库存" 的控件
sleep(2000); // 等待2秒
text("确定").findOne().click(); // 点击 "确定" 按钮
log("进入99退款"); // 记录日志
}
*/
// 文本包含筛选器示例
// textContains("文本") 为当前选择器附加控件 "text 需要包含字符串 str" 的筛选条件。
// textStartsWith(prefix) 为当前选择器附加控件 "text 需要以 prefix 开头" 的筛选条件。
// textEndsWith(suffix) 为当前选择器附加控件 "text 需要以 suffix 结束" 的筛选条件。
// 点击指定位置示例
// click(996, 322);
// var a = desc("提交订单,按钮").findone(); // 查找描述为 "提交订单,按钮" 的控件
// log(a); // 输出查找结果
// findOne() 方法返回控件,如果找不到会堵塞
// findOne(timeout) 方法在规定时间内找到控件,如果找不到返回 null
// findOnce() 方法找到第一个符合条件的控件并返回,找不到返回 null
// findOnce(i) 方法找到第 i 个符合条件的控件后结束
// find() 方法返回所有符合条件的控件,找不到返回 null
// untilFind() 方法找到控件为止,会阻塞直到找到控件
// 点击文本包含 "说点什么" 的控件
/*
var kj = textContains("说点什么").findOne(); // 查找包含 "说点什么" 文本的控件
click(kj.bounds().centerX(), kj.bounds().centerY()); // 点击该控件的中心位置
*/
// 点击包含 "账号" 文本的控件
// {
// var LJGM = textContains("账号").findOne(); // 查找包含 "账号" 文本的控件
// sleep(500); // 等待0.5秒
// toast("触发立即购买"); // 显示 "触发立即购买" 的提示
// click(LJGM.bounds().centerX(), LJGM.bounds().centerY()); // 点击该控件的中心位置
// }
// 检查是否存在包含 "获得6000金币" 的文本
// if (textContains("获得6000金币").exists()) {
// console.log("存在"); // 存在时输出 "存在"
// } else {
// console.log("不存在"); // 不存在时输出 "不存在"
// }
// 获取控件文档内容
// var yttq = textContains("请等待").find().get(0).text(); // 获取第一个包含 "请等待" 文本的控件的文本内容
// var yttqnum = yttq.replace(/[^0-9]/ig, ""); // 从文本内容中提取数字
|