学习
实践
活动
工具
TVP
写文章

Ui Automator 框架和Ui Automator Viewer你会用吗?附送「必备adb命令」拿走不谢 !

1.UI Automator 框架的主要特点 1、元素定位:UI Automator Viewer. 扫描、分析待测应用的 UI 组件的图像工具。 3、元素识别:UI Automator APIs. 在多个应用程序中捕获和操作 UI 组件。 「官方文档:」 https://developer.android.com/training/testing/ui-automator.html#ui-automator-viewer UiAutomator 它也有个元素定位的工具: UI Automator Viewer ? 这个工具是给 App 截图的。 UI Automator Viewer 对一个 App 的首页进行定位就必须先进行截图。 UI Automator 只能识别安卓原控件,图中源码都是它的控件。不能识别 Web 网页,所以看不到 html 的元素表达、标签对这样的东西。

30120

Ui Automator 框架和Ui Automator Viewer你会用吗?附送「必备adb命令」拿走不谢 !

1.UI Automator 框架的主要特点 1、元素定位:UI Automator Viewer. 扫描、分析待测应用的 UI 组件的图像工具。 3、元素识别:UI Automator APIs. 在多个应用程序中捕获和操作 UI 组件。 「官方文档:」 https://developer.android.com/training/testing/ui-automator.html#ui-automator-viewer UiAutomator 它也有个元素定位的工具: UI Automator Viewer 这个工具是给 App 截图的。 UI Automator Viewer 对一个 App 的首页进行定位就必须先进行截图。 UI Automator 只能识别安卓原控件,图中源码都是它的控件。不能识别 Web 网页,所以看不到 html 的元素表达、标签对这样的东西。

50911
  • 广告
    关闭

    2022腾讯全球数字生态大会

    11月30-12月1日,邀您一起“数实创新,产业共进”!

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

    微信小程序自动化实现:Automator

    参考:官方文档 单个测试文件测试流程 安装小程序自动化SDK配合jest实现小程序自动化测试:miniprogram-automator 、jest 示例 index.spec.js const automator = require('miniprogram-automator') automator.launch({ cliPath: '/Applications/wechatwebdevtools.app 自动化测试 在小程序根目录下新建,tests/pages/liugezhou.spec.js const automator = require('miniprogram-automator'); page; const wsEndpoint = 'ws://127.0.0.1:9420'; beforeAll(async() => { miniProgram = await automator.connect miniProgram = await automator.connect({ wsEndpoint, }) miniProgram.pageStack():获取小程序页面堆栈 miniProgram.navigateTo

    12450

    Mac中的Automator小机器人能做什么

    但是只要学会使用Mac上的Automator这个小机器人,对于这些重复的劳动来说,你就只需要将一些元素拖拽到一个Automator生成的程序上就OK了。 什么是Automator? ,编写AppleScripts脚本也是很需要的) Automator Actions Automator允许你选择八中不同类型的行为(Action): 工作流(Workflow):最简单的形式,是一个在 Automator变量 如果以上就是Automator所能够做的,那已经很强大了。但还可以更强大。比如说变量栏,允许你将其中一个步骤的输出保存下来,然后可以往后面的步骤传下去。 Automator中的AppleScript脚本 现在很多Mac上的App都支持AppleScript脚本,Automator也不例外。 第三方软件提供的Automator操作 为了节省你的时间,很多Mac程序的开发者,比如Microsoft,都会提供他们自己软件的Automator操作类型。

    13240

    巧用 Automator,快速为您的Mac创建自定义右键菜单

    很多人都不知道Mac里有个方便好用的东西「Automator」,它可以让你将常用的服务设置在右键,鼠标一点即可运作。    今天macdown小编用 Mac 自带的「Automator」(自动操作),来实现一个鼠标右键来实现图像格式转化的功能。   1.打开「Automator」,新建文件,选择「快速操作」。 2019-09-17_11-02-47.jpeg   如果你做了发现效果不尽人意,可以通过「Automator」再次编辑,如果觉得不是高频需求,可以进入「系统偏好设置」-「键盘」-「快捷键」-「服务」, 2019-09-17_11-07-26.jpeg   这只是「Automator」的冰山一角,它能帮你完成很多自动化操作,有兴趣可以先摸索看看,以后macdown小编会继续和你分享好用的「Automator

    1.8K20

    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,可以编写稳健可靠的测试, 的总结 当 Appium 封装的方法无法满足你的需求的时候可以尝试用 UI Automator API 去解决问题 但不建议,在日常工作中全都用 UI Automator API,学习成本 & 编写成本

    81910

    小程序自动化测试总结

    /miniprogram-automator)工具,给了小程序开发者希望。 二、缘遇-初试miniprogram-automator 基于miniprogram-automator的文档描述简单总结一下,当通过命令打开开发版微信开发者工具的自动化接口并连接自动化接口后,此工具可提供以下能力 工具,连接自动化操作端口 const automator = require('miniprogram-automator'); const miniProgram = automator.connect ({ wsEndpoint: 'ws://localhost:9420',}) Ø 利用miniprogram-automator提供的接口操作小程序从首页重启并进行相关操作 const automator 获取操作后页面相关信息,利用jest进行组织和断言 // index.spec.jsconst automator = require('miniprogram-automator'); describe

    33620

    使用ATOMac进行Mac自动化测试

    启动程序 import atomac atomac.launchAppByBundleId('com.apple.Automator') 查看bundleID的方法 在应用程序->右键选择包内容->Contents 查看app信息 automator = atomac.getAppRefByBundleId('com.apple.Automator') print(automator) 输出 <atomac.AXClasses.NativeUIElement 获取应用标题 window = automator.windows()[0] print(window.AXTitle) 输出 未命名 atomac支持获取和操作大部分的元素,可以使用xcode提供的accessibility 获取元素快照列表 window = automator.windows()[0] sheet = window.sheets()[0] print(sheet) 输出: <atomac.AXClasses.NativeUIElement sheets定位方法来获取当前window的元素快照(sheet) atomac所有的定位方法加上'R'字符,就变成了一个搜索方法(可以添加额外的搜索条件),例如上面的方法我们可以直接改为: sheet = automator.sheetsR

    1.2K20

    小程序 自动化测试

    href="https://jestjs.io/docs/configuration#snapshotserializers-arraystring">详细参考jest文档miniprogram-automator --save-dev在项目根目录下新建文件 index.spec.js 启动文件const automator = require('miniprogram-automator')automator.launch = require('miniprogram-automator') // 自动化插件automator.connect({ wsEndpoint: 'ws://localhost:9420'}). = require('miniprogram-automator') // 自动化插件automator.launch({ cliPath: 'D:/TOOLS/cli.bat', // 工具 cli ---miniprogram-automator 常见api在当前page页面里面获取元素 Element<a href="https://developers.weixin.qq.com/miniprogram

    33420

    Appium+python自动化12-appium元素定位

    前言 appium定位app上的元素,可以通过id,name.class这些属性定位到 一、id定位 1.appium的id属性也就是通过UI Automator工具查看的resource-id属性 ? resource-id") driver.find_element_by_id("com.taobao.taobao:id/home_searchedit") 二、name定位 1、name定位就是通过UI Automator driver.find_element_by_name("这里是text") driver.find_element_by_name("搭配新宠不能缺") 三、class属性 1.class定位就是通过UI Automator android.widget.EditText") (注:一般一个页面上的class属性不唯一,元素不唯一的话定位会报错了) 四、accessibility_id 1.accessibility_id定位就是通过UI Automator

    78480

    Mac 电脑锁屏快捷方法

    本文介绍三种Mac Book Pro(Touch Bar)锁屏方法,依次是 触发角、Finder 钥匙锁、Automator 快捷键。 锁屏方法3 AutoMator 快捷键锁屏 Finder —> 应用程序 —> Automator ? 如上图,打开Automator菜单  —> File —> Service 新建Service,如下图,依次搜索 screen —> Start Screen Saver —> 拖动放入右侧 Service

    3.9K20

    小程序自动化测试总结

    二、缘遇-初试miniprogram-automator 基于miniprogram-automator的文档描述简单总结一下,当通过命令打开开发版微信开发者工具的自动化接口并连接自动化接口后,此工具可提供以下能力 Ø npm i miniprogram-automator --save-dev安装SDK,创建test.js,代码中引入miniprogram-automator工具,连接自动化操作端口 const automator = require('miniprogram-automator'); const miniProgram = automator.connect({ wsEndpoint: 'ws://localhost:9420', }) Ø 利用miniprogram-automator提供的接口操作小程序从首页重启并进行相关操作 const automator = require ('miniprogram-automator'); const miniProgram = automator.connect({ wsEndpoint: 'ws://localhost:9420

    82820

    Hazel轻松管理文件-安装包自动新建同名文件夹并且移动

    /app/alfred) 删除2个月前的下载文件:如果在下载目录超过2个月都没有处理,自动删除 电影、音乐、图片:自动移动到相应目录 以上几个规则,都比较简单,简单说说规则3,规则3是配合Mac自带的Automator 2~5~5~5~A 以下是具体实现步骤: 步骤一:使用Automator创建一个工作流 选择工作流类型 1 2 分钟内的安装包才会进行移动 targetFolder: 安装包移动的目录路径,会在该路劲下创建同名目录 步骤二:创建Hazel规则 这里规则很简单,根据下载的文件名称过滤,如果满足dmg结尾,说明是APP安装包,然后触发Automator 工作流,进行同名文件新建和安装包移动 Automator CICD Consul Consul-template docker docker-compose elasticsearch gitlab

    21730

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

    恰逢最近又在做UI自动化的工作,使用到UI Automator框架。几行代码,就可以让手机自动完成某些操作,很有意思,今天就来扒一扒这背后的原理。 UI Automator 首先,官方文档镇楼:https://developer.android.com/training/testing/ui-automator 传统的手工测试,我们需要点击一些控件元素 注意:UI Automator测试框架是基于instrumentation的API,运行在Android JunitRunner 之上,同时UI Automator Test只运行在 Android 4.3 在UI Automator中,存在uiDevice类,可以通过findObject方法,查看到这些控件元素。 我们现在已经知道了UI Automator是怎么识别控件的,那怎么操作控件元素呢?比如实现控件的自动点击。 我们还是从源码开始入手。

    47940

    Android测试工具 UIAutomator入门与介绍

    UI Automator 测试工具定义以及用途 ---- UI Automator 测试框架提供了一组 API,用于构建在用户应用和系统应用上执行交互的界面测试。 通过 UI Automator API,您可以执行在测试设备中打开“设置”菜单或应用启动器等操作。 UI Automator 测试框架非常适合编写黑盒式自动化测试,此类测试的测试代码不依赖于目标应用的内部实现细节。 UI Automator API 通过 UI Automator API,您可以编写可靠的测试,而无需了解目标应用的实现细节。 Configurator:可让您设置用于运行 UI Automator 测试的关键参数。

    56720

    如何让你的Mac Lion朗读中文

    Mac 提供了实现这个功能的方法,下面来介绍利用Automator实现朗读不同语言的功能。 首先,我们需要在“语音”选项中安装我们需要朗读的语言。 接下来,打开Automator这个工具,第一次打开时,会提示选择要创建的文稿类型,选择“服务”,如下图。 然后从左侧资源库中选择“文本”,“朗读文本”,拖动到右侧的空白区域中。 参考资料: 1、Automator Service for multi-language speech @import url(http://www.cnblogs.com/Load.ashx

    60020

    京喜前端自动化测试之路(小程序篇)

    小程序自动化 SDK— 聊到小程序的自动化工具,微信官方为开发者提供了一套小程序自动化 SDK —— miniprogram-automator[1] , 我们不需要关注技术选型,可直接使用。 示例 const automator = require('miniprogram-automator') automator .launch({ cliPath: '/Applications await element.tap() await miniProgram.close() }) 综上所述,我们选择使用官方维护的 SDK —— miniprogram-automator ddd 场景实现: 根据测试流程以及配置的测试用例信息,编写测试脚本,模拟测试用例场景: 访问页面 const miniProgram = await automator.launch({ 参考资料 [1] miniprogram-automator: https://www.npmjs.com/package/miniprogram-automator [2] Selenium WebDriver

    71640

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

    首先上实现效果的视频:https://v.qq.com/x/page/x3021yp3u3a.html 实现该功能所使用软件 Hazel:可在网上自行下载 Automator :Mac自带的Automator com.tencent.xinWeChat/2.0b4.0.9/09af4488ac59013c076d683513a0e252/Message/MessageTemp/这个目录; 然后是监听到了这个文件夹里有新文件时,触发一个Automator 工作流,进行文件的移动,为啥这里不能由Hazel直接移动,因为在MessageTemp目录下,是存在很多子文件夹的,聊天文件在某一个子文件夹,Hazel不能确定具体是哪一个新增的文件需要移动,所以这里使用Automator 工作流进行移动; MessageTemp目录下,存在很多子文件夹的 Automator 工作流具体实现 步骤1:创建类型为工作流的Automator 步骤2:具体实现Automator 附件:判断是否需要移动.workflow 下载 Automator CICD Consul Consul-template docker docker-compose elasticsearch gitlab

    35530

    文件拖放工具Yoink for Mac使用技巧

    技巧 8 向 Yoink 添加邮件附件 使用 Automator,您可以轻松快捷地从多封邮件中添加多个附件。 这篇博文 解释了如何使用 Automator 进行设置(并添加键盘快捷键)。 技巧9 将屏幕截图发送到 Yoink Yoink 接受来自 Finder 的任何文件,这使其易于与 Automator 一起使用。

    23740

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

    其中包括如何对Automator.app进行逆向工程分析以找到一个未记录的API来启用该技术。除此之外,我们还会提供一个针对Aotumation(JXA)代码的JavaScript来实现持久化攻击。 技术分析 在进行技术研究过程中,我还对Automator.app进行了分析,即苹果通过拖放应用程序来构建重复任务执行所使用的技术。Automator中包含了一个内置模板,可以用于构建日历警报: ? 所以,我觉得有必要仔细研究一下Automator,看看它是如何做到这一点的。 首先,我使用了FileMonitor和ProcessMonitor来对Automator背后的工作机制进行了分析。 procedureAlarmWithBookmark:" <+958>: movq %rax, %rdi <+961>: movq %r15, %rdx <+964>: callq *%r14 我们可以看到,Automator 这里我们选择Automator日历,记录下对应的UID。接下来,我们使用JXA中的persist_calalert函数来创建新的事件。

    21620

    扫码关注腾讯云开发者

    领取腾讯云代金券