App自动化测试|Appium元素定位工具

简介: App自动化测试|Appium元素定位工具

常用元素定位工具使用

uiautomatorviewer定位工具

元素定位主要用来获取元素信息,获取元素信息后才能用appium提供的相关API去识别和操作元素。

谷歌在AndroidSDK中,提供了元素定位工具uiautomatorviewer,该工具可在android-sdk安装路径下找到:\tools\uiautomatorviewer.bat

在这里插入图片描述

使用步骤:1、首先在虚拟机或真机上打开要识别的app 2、在dos命令窗口输入uiautomatorviewer命令 3、然后点击Device Screenshot按钮连接手机

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

最终效果如下图:app界面内容展示在uiautomatorviewer工具窗口的左侧

在这里插入图片描述

注:android8.1以后sdktools自带的uiautomatorviewer直接打开,截取不到机器界面信息

Appium Inspector定位工具

打开Appium-Desktop之后,启动Appium服务,单击该页面右上角的第一个“Start Inspector Session”按钮,就会启动一个新的会话窗口。如下图:

在这里插入图片描述

跳出 Inspector界面

在这里插入图片描述

在Inspector界面的Desired Capabilities中配置要识别元素信息app的appPackage和appActivity,点击”start session”即可自动启动android虚拟机的app,并能在Inspector工具上显示app界面,如下图

在这里插入图片描述

Appium Inspector定位工具界面介绍:

  • 1.Select Elements:根据元素定位;用来识别元素
  • 2.Swipe By Coordinates:根据坐标滑动页面;如果inspector界面没有展示全部,可以通过上滑展示到底部
  • 3.Tap By Coordinates:根据坐标点击操作;inspector界面点击某个元素,可以跳转到该元素的界面,且app同步跳转
  • 4.Back:返回
  • 5.Refresh Source & Screenshot:刷新界面与截图
  • 6.Start Recording:录制按钮,能自动生成自动化脚本
  • 7.Search for element:在App Source中搜索元素
  • 8.Copy XML Source to Clipboard:复制XML源代码
  • 9.Quit Session & Close Inspector:退出会话或结束
  • 10.Source:源代码显示区域
  • 11.Actions:
  • 12.Selected Element:被选中元素信息显示

在这里插入图片描述

Selected Element: 选中的元素对应的属性信息,这个就是我们查找定位元素的关键信息

  • index:索引
  • text:文本
  • class:类
  • package:包
  • content-desc:内容描述
  • checkable:可选
  • checked:选中
  • enabled:可用
  • focusable:可获得焦点
  • focused:获得焦点
  • scrollable:可滚动
  • long-clickable:可长点击
  • password:隐藏明文(密文显示)
  • selected:选中
  • bounds:界面(起始点坐标/终止点坐标)
  • resource-id:元素ID

在这里插入图片描述

Appium Inspector录制功能

  • 点击 Start Recording 开启录制
  • 点击 Select Elements 元素定位
  • 选中 操作元素
  • 在Selected Element界面,点击tap(Tap-点击、Send Keys-写入值、Clear-清空)
  • 在 Recorder 下可选择生成代码的语言,并展示在下方空白处

在这里插入图片描述

相关文章
|
13天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
49 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
9天前
|
安全 前端开发 测试技术
如何选择合适的自动化安全测试工具
选择合适的自动化安全测试工具需考虑多个因素,包括项目需求、测试目标、系统类型和技术栈,工具的功能特性、市场评价、成本和许可,以及集成性、误报率、社区支持、易用性和安全性。综合评估这些因素,可确保所选工具满足项目需求和团队能力。
|
7天前
|
监控 网络协议 Java
一些适合性能测试脚本编写和维护的工具
一些适合性能测试脚本编写和维护的工具
|
8天前
|
安全 网络协议 关系型数据库
最好用的17个渗透测试工具
渗透测试是安全人员为防止恶意黑客利用系统漏洞而进行的操作。本文介绍了17款业内常用的渗透测试工具,涵盖网络发现、无线评估、Web应用测试、SQL注入等多个领域,包括Nmap、Aircrack-ng、Burp Suite、OWASP ZAP等,既有免费开源工具,也有付费专业软件,适用于不同需求的安全专家。
11 2
|
10天前
|
运维 Ubuntu 应用服务中间件
自动化运维工具Ansible的实战应用
【10月更文挑战第36天】在现代IT基础设施管理中,自动化运维已成为提升效率、减少人为错误的关键手段。本文通过介绍Ansible这一流行的自动化工具,旨在揭示其在简化日常运维任务中的实际应用价值。文章将围绕Ansible的核心概念、安装配置以及具体使用案例展开,帮助读者构建起自动化运维的初步认识,并激发对更深入内容的学习兴趣。
32 4
|
11天前
|
运维 监控 数据安全/隐私保护
自动化运维工具的设计与实现
【10月更文挑战第34天】在现代IT基础设施管理中,自动化运维工具扮演着至关重要的角色。它们不仅提高了运维效率,还确保了服务的连续性和稳定性。本文将深入探讨如何设计并实现一个自动化运维工具,从需求分析到功能实现,再到最终的测试与部署。我们将通过一个简单的代码示例来展示如何自动执行常见的运维任务,如日志清理和性能监控。文章旨在为读者提供一套完整的方法论,以便他们能够构建自己的自动化运维解决方案。
|
19天前
|
Web App开发 定位技术 iOS开发
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
20 1
|
10天前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
40 3
|
1月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
59 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
2月前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
242 7
Jmeter实现WebSocket协议的接口测试方法