当前位置: 首页 > ds >正文

Accessibility Insights for Windows 使用教程

第一步:下载并安装工具 (仅需一次)

  1. 访问官网:打开浏览器,访问 Accessibility Insights 官方下载页面:

    Accessibility Insights Downloads

  2. 下载:在页面中找到 "For Windows" 部分,点击下载按钮。

  3. 安装:下载完成后,运行安装包。安装过程非常简单,只需点击几下即可完成。

第二步:准备工作

  1. 打开你的目标软件:启动你想要捕获按钮 AutomationId 的那个应用程序,并确保你想检查的按钮是可见的。

  2. 启动 Accessibility Insights:从开始菜单或桌面快捷方式打开 "Accessibility Insights for Windows"。

第三步:开始检查和锁定按钮

  1. 在 Accessibility Insights 的主欢迎界面,点击大大的 "Inspect" 按钮。

  2. 此时,Accessibility Insights 的检查窗口会启动并通常会停靠在屏幕边缘。你的鼠标指针现在变成了“检查器”。

  3. 将鼠标缓慢移动到你想要捕获的目标按钮上。你会看到一个高亮框实时地跟随你的鼠标,并框住识别到的UI元素。

一、核心常用快捷键 (Most Useful)

这两个是您在日常检查中最可能用到的,能极大提升效率。

  1. Shift + F9:切换窗口焦点

    • 功能:将 Accessibility Insights 窗口置于最前或最小化。

    • 为什么需要它:当您的鼠标正在目标软件上检查元素时,您可能需要操作 Accessibility Insights 窗口本身(比如复制内容)。如果直接用鼠标去点击,就会改变检查的目标。使用 Shift + F9 可以让您在不移动鼠标的情况下,用键盘将焦点切换回来,非常方便。

  2. Shift + F5:暂停/恢复UI树更新

    • 功能:当焦点改变时,暂停或恢复对UI自动化树的更新。

    • 为什么需要它:这是检查悬停菜单、工具提示等“转瞬即逝”元素的利器。例如,一个菜单只有在鼠标悬停时才出现,一旦鼠标移走去点击检查工具,菜单就消失了。

    • 操作方法

      1. 用鼠标触发该菜单让它显示出来。

      2. 不要移动鼠标,直接按下 Shift + F5 键。

      3. 此时UI树被“冻结”,即使您移开鼠标,菜单也不会消失在UI树里了。现在您可以从容地在 Accessibility Insights 窗口中找到并分析该菜单项的 AutomationId


二、高级导航快捷键 (Useful for Complex Scenarios)

当您发现一个按钮没有唯一的 AutomationIdName 时,您可能需要通过它的父容器或兄弟元素来定位它(这在自动化测试中称为“相对定位”)。这时,这组快捷键就非常有用了。

  • Control,Shift + F6:检查父元素

  • Control,Shift + F5:检查上一个同级元素。

  • Control,Shift + F8:检查下一个同级元素。

  • Control,Shift + F7:检查第一个子元素

  • Control,Shift + F9:检查最后一个子元素

为什么需要它们:它们能帮助您在UI元素的层级结构(UI树)中快速移动,从而理解元素的布局和上下文关系。这对于构建更稳健的定位策略至关重要。


三、特定功能快捷键 (Less Relevant for Your Goal)

对于您“捕获ID”这个核心目标来说,以下这些快捷键基本用不到。

  • Shift + F8 (运行测试):这是用来做“可访问性自动化测试”的,而不是用来查看属性的。

  • Shift + F7 (记录事件):这是给开发者用来调试更深层次的UI事件(比如焦点变化、属性修改)的,对于仅查找ID来说过于复杂。

总结

对于您捕获 AutomationId 的任务:

  • 您最需要掌握的是 Shift + F9Shift + F5

  • 当遇到没有唯一ID的复杂情况时,再使用高级导航快捷键Ctrl,Shift + F5/F6/F7/F8/F9)来帮助分析。

  • 您可以暂时忽略 Shift + F8Shift + F7

http://www.xdnf.cn/news/16754.html

相关文章:

  • dubbo应用之3.0新特性(响应式编程)(2)
  • JVM 崩溃(Fatal Error)解决方法
  • C++与C#实战:FFmpeg屏幕录制开发指南
  • Rust基础-part8-模式匹配、常见集合
  • 前端学习日记(十五)
  • 利用对称算法及非对称算法实现安全启动
  • 《剑指offer》-算法篇-位运算
  • 【术语扫盲】MCU与MPU
  • [CSP-J 2022] 逻辑表达式
  • 【C++算法】76.优先级队列_前 K 个高频单词
  • 【VOS虚拟操作系统】未来之窗打包工具在前端资源优化中的应用与优势分析——仙盟创梦IDE
  • Java奖客富翁系统:注册登录抽奖全实现
  • 小程序视频播放,与父视图一致等样式设置
  • Python爬虫01_Requests第一血获取响应数据
  • 【Python】数据可视化之聚类图
  • logtrick 按位或最大的最小子数组长度
  • Apache Ignite 的对等类加载(Peer Class Loading, P2P Class Loading)机制
  • 快速了解逻辑回归
  • 6、微服务架构常用十种设计模式
  • PLC如何进行远程维护远程上下载程序?
  • QT项目 -仿QQ音乐的音乐播放器(第三节)
  • 基于dcmtk的dicom工具 第九章 以json文件或sqlite为数据源的worklist服务(附工程源码)
  • Qt 移动应用性能优化策略
  • 复现cacti的RCE(CVE-2022-46169)
  • TDengine 中 TDgpt 异常检测的机器学习算法
  • Leetcode——41. 缺失的第一个正数
  • 数学建模——非线性规划
  • 大文档免费翻译方法分享
  • 政策合规性前端设计:工业数据安全的可视化技术规范与落地实践
  • C语言进阶(指针2.函数指针和指针函数,二级指针,指针数组和数组指针,void*指针)