首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从Android手机的抢红包插件说起

恰逢最近又在做UI自动化的工作,使用到UI Automator框架。几行代码,就可以让手机自动完成某些操作,很有意思,今天就来扒一扒这背后的原理。...如果这些操作,每一次都需要手工执行的话,是需要大量的人力成本的,比如手机QQ安卓端, 手工用例有上万条。所以就需要大力推广自动化测试。...按照我们的现有的逻辑,自动抢红包大致分为以下几个步骤: 识别获取通知栏的微信红包的通知事件 点击通知栏的消息 获取红包的消息 点击按钮拆红包 这里面最最重要的两个步骤就是识别,操作。...{ ………… // 初始化运动事件,调用UI Automation的injectInputEvent注入事件,异步执行...使用AccessibilityService做自动化的步骤 大家看了上面的分析,可能对自动化有了一点兴趣,其实归纳起来,步骤很简单: 分析整个操作流程,拆解成关于每个控件的识别与操作

1.4K40

Android测试工具 UIAutomator入门与介绍

通过 UI Automator API,您可以执行在测试设备中打开“设置”菜单或应用启动器等操作。...用于检索状态信息并在目标设备上执行操作的 API。 支持跨应用界面测试的 API。...UI Automator 测试框架提供了一个 UiDevice 类,用于在运行目标应用的设备上访问和执行操作。您可以调用方法以访问设备属性,如当前屏幕方向或显示屏尺寸。...打开通知栏。 截取当前窗口的屏幕截图。 UI Automator API 通过 UI Automator API,您可以编写可靠的测试,而无需了解目标应用的实现细节。...UiSelector:表示设备上的一个或多个目标界面元素的查询。 Configurator:可让您设置用于运行 UI Automator 测试的关键参数。

1.4K20
您找到你想要的搜索结果了吗?
是的
没有找到

Appium自动化(10) - appium高级元素定位方式之 UI Automator API 的详解

的 API 功能实现的 UI Automator 介绍 UI Automator 测试框架提供了一组 API 来构建 UI 测试,用于在用户应用和系统应用中执行交互 利用 UI Automator API...,可以打开“设置”菜单或应用启动器等操作 UI Automator 测试框架非常适合编写黑盒自动化测试,其中的测试代码不依赖于目标应用的内部 UI Automator 提供的功能 自带的元素定位工具 在设备上检索状态信息执行操作的...API 支持跨应用 UI 测试的API UI Automator 访问设备状态 UI Automator 测试框架提供了一个 UiDevice 类,用于在 app 运行的设备上进行访问和执行操作,它提供了以下操作...更改设备旋转 按D-pad按钮 按返回、主屏幕、菜单按钮 打开通知当前窗口进行屏幕截图 更多的 UI Automator API 利用 UI Automator API,可以编写稳健可靠的测试,...自动化代码选择元素时候直接使用到的 UiSelector 用来生成一个定位器来选择界面中的控件元素,可以通过text,content-desc,class,和一些状态信息来进行条件过滤 类似于

1.3K10

ClipboardAction for mac(剪贴板管理工具)v1.5.3激活版

Clipboard Action Mac版允许剪贴板历史中的每一段内容执行操作使用AppleScript或Automator工作流定义您的定制操作,或者使用默认的应用程序操作。...Native Mac Interface –通过滑动手势执行操作或删除内容。浏览剪贴板历史记录–通过滑动手势,导航按钮或键盘快捷键。默认应用程序操作–打开,保存到文件使用Google搜索。...自定义动作–使用AppleScript或Automator工作流的用户定义动作。文件夹–将内容组织到文件夹中。搜索和过滤内容–按内容类型或复制内容的来源进行文本搜索和过滤。...全局快捷方式–从任何地方显示应用程序,使用实际剪贴板内容执行选定的操作。全局系统服务–使用任意位置的选定文本执行操作。快捷方式–通过快捷键Cmd +1 .. Cmd + 10执行操作。...触摸栏支持–剪贴板历史记录中的导航执行操作。登录时启动应用程序。

73020

Apple Remote Desktop for Mac(mac远程桌面管理软件)

指定复制操作所占用的网络带宽。资产管理和报告使用 Remote Spotlight 搜索,能以闪电般的速度,在 Mac 电脑网络里快速搜索。...远程协助观测控制你的 Mac 电脑。使用远程拖放功能在 Mac 电脑之间传输文件。在任意两部电脑之间复制和粘贴信息。查看系统状态指示器,通过色码详细了解可用磁盘空间、内存和 CPU 利用率。...使用 Curtain 模式,在你远程控制终端用户系统时,可防止看到屏幕上的操作。...自动执行使用 Mac OS X 中的 Automator,让例行管理工作自动化。超过 40 种预置操作,让你立刻上手。将各种操作连结在一起,创建功能强大的系统管理工作流程。...将这些操作与其他应用程序操作相结合,创建终端终端的解决方案。将工作流程保存为插件,为 Apple Remote Desktop 功能提供简易的、可自定义的界面。

2.9K20

mac 终极教程,最全,最实用的教程

它支持多种操作系统,Windows有完美的支持。通过融合模式,可以让Windows程序运行起来象Mac的应用。提供把Vmware Fusion虚拟机迁移到PD上的功能。收费。...退出Automator。 选中文件或程序,右键-服务-以新实例运行,即可实现类似open -n的方式。 102.Automator Automator是苹果公司为操作系统OS X开发的一款软件。...如何记住这些快捷键呢,有人开发了一款软件叫做CheatSheet,安装打开之后,当你记不住快捷键的时候,按住command键两秒钟,就会弹出一个当前应用软件快捷键列表,不全,但是大部分用户都够用了。...使用control+F2可以选中menu bar的菜单,通过左右键选择功能,回车执行使用control+F3可以选中显示Dock,通过左右键选择功能,回车执行。 该功能在全屏操作时尤其有效。...121.如何禁用通知

3.6K32

MacOS 实现自动切换鼠标滚动方向

使用 Automator + Login Items 实现登录后自动检查 Automator 通常我们可能是在主要工作场所使用外接键鼠设备,在临时工作场所使用触控板。...这时候我们可以通过 macOS 自带的 Automator 应用,将上面的检测切换脚本制作成一个 app, 设置为登录后自动执行,以实现不同工作场景自动切换鼠标滚动方向的效果。...login 使用 crontab 定时检查 如果还有其他的临时切换工作场景的情况,仅凭登录时检测还不够(比如在登录后插入鼠标设备、到会议室开会等), 可以使用 crontab 定时检查鼠标连接状态切换滚动方向...注意:使用 crontab 执行 AppleScript 时,同样需要在 系统偏好设置 -> 安全性与隐私 -> 隐私 -> 辅助功能 中添加 cron。...spotlight xcode inspector 小贴士:在定位元素时,将操作系统使用的主语言改成英文,会有很大帮助。

10710

Android 开发: 小工具,大效率

::dispatchResult处标记@DebugLog 2)Hugo插件计算的运行时间 Hugo插件计算的运行时间 第一行:打印执行方法及其参数 第二行:方法执行时间 3)常规日志打印运行时间 常规日志打印运行时间...和 iOS 两个平台代码进行检查,同时支持Mac 、Windows、Linux三种操作系统。...(1)背景介绍 在日常需求开发中,经常碰到不太熟悉的模块,如何快速定位相应页面?...一般有以下几张方式: 1)根据项目中的模块划分及命名,在项目目录中搜寻; 2)使用UI Automator Viewer 工具定位所在模块页面某个控件 UI Automator Viewer 工具定位...3)使用 adb 工具 查看当前Activity :adb shell "dumpsys window w | grep name=" 其他相关操作: 查看当前栈顶的Activity :adb shell

5.6K10

把Sublime添加到Mac右键菜单

虽然大部分的时候是使用命令行,但是有些时候我们需要在Finder里面编辑某些文件的时候,如果还是拘泥于这样,就必须打开 iTerm (幸好有Profile可以一键打开终端)切换目录,编辑;这时候,类似Windows...如果Mac系统识别出这是一个文本文件,右键菜单的 打开方式 可能还有点用,如果识别不出来,那么手动选择应用程序就比较麻烦了: ?...其实Mac系统的 AutoMator 是可以完成这个功能的;接下来说一下操作步骤。...打开 Automator 这个程序(可以使用Spotlight或者Alfred直接搜索),在弹出的菜单中选择 服务 ?...如何删除 如果弄错了,想删除掉;直接去 ~/Library/Services 删除对应的目录即可。

2.9K20

Android 蓝牙开发(1)

利用远程设备的已知 Mac 地址可以随时向发起连接,而不需执行发现操作(假定该设备处于有效范围内)。 被配对和被连接之间存在差别。...发现进程通常包含约 12 秒的查询扫描,之后发现的设备进行扫描,以检索蓝牙设备的名字。...如果用户响应为 YES,则设备将变为可检测到持续指定的时间量。然后您的 Activity 将会收到 onActivityResult() 回调的调用,结果代码等于设备可检测到的持续时间。...如:应用可以接受指示所连接设备的电池电量的广播,根据需要通知用户或采取其他操作。...创建 BluetoothHealthCallback 注册充当健康汇集设备的应用配置(BluetoothHealthAPPConfiguration) 建立到健康设备的连接 成功连接到健康设备后,使用文件描述符健康设备执行读写操作

2.4K01

BBEdit for Mac(好用的HTML文本编辑器)v14.6.4注册激活版

图片 BBEdit for Mac(好用的HTML文本编辑器) BBEdit mac版功能介绍 1.对文本进行全面控制 在任何Automator工作流程中使用BBEdit的传奇文本处理能力 随时随地创建...快速轻松地构建一系列转换并将其应用于任意数量的文档 2.按你的方式工作 直接,因为BBEdit与您所依赖的所有Mac行为完全一样,从键盘快捷键到支持最新的Mac技术,如Bonjour 自定义菜单键(键盘快捷键...) 使用您喜爱的脚本语言为Apple BBIdit创建自己的函数,并提供全面的AppleScript,Automator,Perl和Unix Shell支持 您甚至可以使用AppleScript修改内置菜单的行为...,因为BBEdit是可连接的 文本完成速度输入确保正确; 创建剪报以便随时访问常用项目和自定义标签; 菜单驱动和键绑定项目选择; 语言的剪辑集 无需编程即可创建自己的语法着色 使用BBEdit和macOS...创建BBEdit项目以在单个窗口中相关文件进行分组和编辑,无论它们在磁盘上的位置如何 直接在FTP和SFTP服务器上创建和编辑文件,内置Open from FTP / SFTP Server和Save

95030

如何利用Calendar Alerts在macOS上实现持久化

写在前面的话 在这篇文章中,我们将介绍如何利用Calendar Alerts在macOS上实现持久化,深入讨论如何在渗透测试行动中使用这项技术。...其中包括如何Automator.app进行逆向工程分析以找到一个未记录的API来启用该技术。除此之外,我们还会提供一个针对Aotumation(JXA)代码的JavaScript来实现持久化攻击。...技术分析 在进行技术研究过程中,我还对Automator.app进行了分析,即苹果通过拖放应用程序来构建重复任务执行使用的技术。...所以,我觉得有必要仔细研究一下Automator,看看它是如何做到这一点的。 首先,我使用了FileMonitor和ProcessMonitor来Automator背后的工作机制进行了分析。...现在,我们需要枚举用户的日历,这里可以使用list_calendars函数来实现,不过这个操作需要用户授权: 这里我们选择Automator日历,记录下对应的UID。

1K20

Hazel轻松管理文件-微信聊天文件自动分类存放

首先上实现效果的视频:https://v.qq.com/x/page/x3021yp3u3a.html 实现该功能所使用软件 Hazel:可在网上自行下载 Automator :Mac自带的Automator...我默认会在文件名称前添加时间前缀,并且打开日志文件 个人文件:我会选择一个目录进行保存 实现步骤 首先是创建Hazel文件夹规则 重点讲一下MessageTemp这个文件夹的规则 首先是如何让...Automator 工作流进行移动; MessageTemp目录下,存在很多子文件夹的 Automator 工作流具体实现 步骤1:创建类型为工作流的Automator 步骤2:...OpenData和File目录的所有文件,然后执行filterRules规则,过滤掉不需要处理的文件 流程3:将文件转化成文件路径(现在看来有点多余了) 流程4:获取变量chooseFromList值...gitlab-runner harbor Hazel hybris java kubernetes mac macx高效率 nginx rancher spring boot spring cloud

1.4K30

自古以来,同步异步都是八股文第一章

下面给出的3技术术语,都是很核心、易混淆的概念点,但是多少还是有些表象、侧重点的不同。 书读百遍义自见, 请关注最下方给出的微软官方技术文献, 自勉!! 1....同步/异步、 阻塞/非阻塞 阻塞操作不等于同步,非阻塞操作也不等于异步。实际上,它们之间并没有直接的联系。 先说同步,这个很简单,就是按照代码来顺序执行。...事件/消息[3] 事件是条件或状态更改的轻量级通知。 • 事件的发布者如何处理事件没有期望。 • 事件的使用者决定如何处理通知。...• 消息的发布者对于消费者如何处理消息有一个期望。双方之间存在一份契约。例如,发布者发送带有原始数据的消息,期望消费者从该数据创建文件,并在工作完成时发送响应。 3....上面三概念:冥冥中存在某种微妙联系。 同步/异步:描述了信息的对齐方式,如果是异步会即时返回,使用状态通知、回调事件(这个回调事件对应事件/消息的事件概念)来获得操作结果。

16740

UWB定位产品不可忽视的MAC层实现

协议 和 Z-MAC协议,周期性的侦听和睡眠机制的协议算法实现有较为详细的介绍,没有基础的同学可以听听。...UWB应用在煤矿等场景时,通常要求1秒钟能完成200个标签的测距,这就是一个吞吐量和时延的性能指标,如何实现,这就涉及到MAC层的控制; MAC协议是保证无线传感器网络正常运作、高效通信的关键,主要用于在传感器节点间公平有效地共享通信媒介...从能耗出发,MAC协议通常采用侦听/休眠交替的无线停产使用策略,采用按需使用信道的方式,通过竞争方式占用无线信道。 1、S-MAC协议:特点让所有节点进行周期性侦听与休眠,达到节能目的。...2、T-MAC协议:特点根据流量动态调整侦听时间,通过进一步缩短侦听时间降低能耗。更节能,牺牲了网络的时延和吞吐量,早睡问题、额外通信开销、网络冲突、协议复杂性等问题。...milliseconds发送一个信标广播给 client,如果client_id匹配,则在100ms内 发送数据给dataServer,测试程序发送了 94 milliseconds  数据,然后就结束发送,继续等待信标通知

53510

小程序自动化测试总结

二、缘遇-初试miniprogram-automator 基于miniprogram-automator的文档描述简单总结一下,当通过命令打开开发版微信开发者工具的自动化接口连接自动化接口后,此工具可提供以下能力...miniprogram-automator工具用来操作开发者工具中运行的小程序获取所需的信息。对于测试需求可以结合jest框架进行测试用例的组织和断言。...命令运行成功后,开发者工具会自动打开项目,弹出提示 Ø npm i miniprogram-automator--save-dev安装SDK,创建test.js,代码中引入miniprogram-automator...({ wsEndpoint: 'ws://localhost:9420',}) Ø 利用miniprogram-automator提供的接口操作小程序从首页重启并进行相关操作 const automator...利用miniprogram-automator工具和jest框架,自动化测试主要能力为按照指定顺序模拟打开指定页面、点击、滚动等操作和设置page的data渲染数据,然后特定的页面结构、数据、组件属性等信息进行断言

1.6K20

分布式 PostgreSQL 集群(Citus)官方安装指南

集群启动运行后,您可以访问我们关于多租户应用程序或实时分析的教程,在几分钟内开始使用 Citus。...配置连接和认证 在启动数据库之前,让我们更改访问权限。默认情况下,数据库服务器仅侦听 localhost 上的客户端。...添加 worker 节点信息 我们需要通知 coordinator 有关 worker 的信息。为了添加这些信息,我们调用一个 UDF,它将节点信息添加到 pg_dist_node 目录表中。...配置连接和认证 在启动数据库之前,让我们更改访问权限。默认情况下,数据库服务器仅侦听 localhost 上的客户端。...添加 worker 节点信息 我们需要通知 coordinator 有关 worker 的信息。为了添加这些信息,我们调用一个 UDF,它将节点信息添加到 pg_dist_node 目录表中。

1.8K30

6款超好用的macOS工具软件,提高Mac使用体验

MacBook上有不少像IINA、Downie等强大的神器,有像预览、文档编辑等基础软件,也有一些像快捷指令、Automator以及活动监视器等这样一些效率工具软件。...但是在大部分时候,Mac上自带的效率工具软件都存在一些限制,比如无法在菜单栏查看电脑的运行状况;在系统功能上也有些不足,比如一些系统设置无法在菜单栏快速找到;分屏操作繁琐......今天就推荐6款能提高使用体验的...,无法随时看到状态栏的通知,也无法打开Dock栏。...第五款:AlDente(Mac电池优化管理工具)MacBook因为更换电池的费用要比其他的笔记本要贵得多,使得不少用户电池的使用比较谨慎,也便有了“Mac要始终插电使用还是充电就拔掉电源”之类的问题...,提高Mac使用体验,希望能有所帮助。

1.9K60

妙用AccessibilityService黑科技实现微信自动加好友拉人进群聊

你可以通过Windows微信、Mac微信或者手机客户端微信登录。 是的,就是这样一句话,找不到申诉渠道,也不知道何时才可能会解封。...使用AccessibilityService也非常Easy,核心要点就是: 通过UI Automator找到节点,通过resource-id,text,content-desc等 唯一特征定位到具体的节点...,接着执行各种模拟操作,点,滚动,填充, 用法比较简单的,大部分时间会花在试错和逻辑调整上!...---- 2.服务的配置 自定义完这个服务要想让他启用你还得执行下面的操作: Step 1:在res文件夹下创建xml文件夹,新建一个配置的xml文件(名字自己定) <?...handler.postDelay()延时执行: 除了这样玩以外,我还利用时间差,串行去执行几个任务,比如: 上面的步骤是: 进入群聊聊天信息页后,列表滚动两次,接着依次: 1.延时1s后,找到添加成员按钮点击

2.9K40

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券