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 下可选择生成代码的语言,并展示在下方空白处

在这里插入图片描述

相关文章
|
15天前
|
测试技术 C语言
网站压力测试工具Siege图文详解
网站压力测试工具Siege图文详解
23 0
|
22天前
|
Web App开发 前端开发 Java
《手把手教你》系列技巧篇(九)-java+ selenium自动化测试-元素定位大法之By name(详细教程)
【4月更文挑战第1天】 这篇教程介绍了如何使用Selenium Webdriver通过name属性来定位网页元素,作为系列教程的一部分,之前讲解了id定位,后续还会有其他六种定位方法。文中以百度搜索为例,详细说明了定位搜索框(name="wd")并输入关键词“北京宏哥”的步骤,包括手动操作流程、编写自动化脚本以及代码实现。此外,还提供了查看和理解Selenium源码的方法,强调了`open implementation`选项用于查看方法的具体实现。整个过程旨在帮助读者学习Selenium的元素定位,并实践自动化测试。
41 0
|
18天前
|
前端开发 Java 测试技术
《手把手教你》系列技巧篇(十二)-java+ selenium自动化测试-元素定位大法之By link text(详细教程)
【4月更文挑战第4天】本文介绍了link text在自动化测试中的应用。Link text是指网页中链接的文字描述,点击可跳转至其他页面。文章列举了8种常用的定位方法,其中着重讲解了link text定位,并通过实例展示了如何使用Java代码实现点击百度首页的“奥运奖牌榜 最新排名”链接,进入相应页面。如果link text不准确,则无法定位到元素,这说明linkText是精准匹配,而非模糊匹配。文章还提到了partial link text作为link text的模糊匹配版本,将在后续内容中介绍。
36 4
|
16天前
|
XML 前端开发 Java
《手把手教你》系列技巧篇(十四)-java+ selenium自动化测试-元素定位大法之By xpath上卷(详细教程)
【4月更文挑战第6天】按宏哥计划,本文继续介绍WebDriver关于元素定位大法,这篇介绍定位倒数二个方法:By xpath。xpath 的定位方法, 非常强大。使用这种方法几乎可以定位到页面上的任意元素。xpath 是XML Path的简称, 由于HTML文档本身就是一个标准的XML页面,所以我们可以使用Xpath 的用法来定位页面元素。XPath 是XML 和Path的缩写,主要用于xml文档中选择文档中节点。基于XML树状文档结构,XPath语言可以用在整棵树中寻找指定的节点。
43 0
|
6天前
|
XML 数据格式 Python
App测试中,强制等待和隐式等待谁更强?
本文介绍了在自动化脚本中添加等待以确保与应用程序同步的重要性。由于应用响应时间的不确定性,适当等待能防止脚本在操作未完成前继续执行,提高测试稳定性。等待包括强制等待(如`time.sleep()`)、隐式等待(全局设置查找元素的等待时间)和显式等待(根据预期条件等待)。示例代码展示了如何在Python的Appium测试中应用这些等待策略,以优化脚本的可靠性和与应用的同步。
20 0
|
11天前
|
前端开发 JavaScript Java
《手把手教你》系列技巧篇(十九)-java+ selenium自动化测试-元素定位大法之By css下卷(详细教程)
【4月更文挑战第11天】按计划今天宏哥继续讲解css的定位元素的方法。但是今天最后一种宏哥介绍给大家,了解就可以了,因为实际中很少用。
35 2
|
12天前
|
前端开发 JavaScript Java
《手把手教你》系列技巧篇(十八)-java+ selenium自动化测试-元素定位大法之By css中卷(详细教程)
【4月更文挑战第10天】本文主要介绍了CSS定位元素的几种方法,包括ID属性值定位、其他属性值定位和使用属性值的一部分定位。作者提供了示例代码,展示了如何使用这些方法在Java+Selenium自动化测试中定位网页元素。通过CSS选择器,可以更精确地找到页面上的特定元素,如输入框、按钮等,并进行相应的操作,如输入文本、点击等。文章还提供了实际运行代码后的控制台输出和浏览器动作的示例。
48 0
|
13天前
|
前端开发 JavaScript Java
《手把手教你》系列技巧篇(十七)-java+ selenium自动化测试-元素定位大法之By css上卷(详细教程)
【4月更文挑战第9天】本文介绍了CSS定位方式的使用,包括它的优势和8种常用的定位方法。CSS定位相比XPath定位更快、更稳定。文章通过示例详细讲解了如何使用CSS定位元素,包括通过id、name、class name、tag name、link text、partial link text以及XPath进行定位。还提供了Java代码示例来演示如何在自动化测试中使用这些定位方法。
39 1
|
15天前
|
测试技术 Linux Apache
网站压力测试工具webbench图文详解
网站压力测试工具webbench图文详解
12 0
|
17天前
|
安全 测试技术
深入理解白盒测试:方法、工具与实践
【4月更文挑战第7天】 在软件开发的质量控制过程中,白盒测试是确保代码逻辑正确性的关键步骤。不同于黑盒测试关注于功能和系统的外部行为,白盒测试深入到程序内部,检验程序结构和内部逻辑的正确性。本文将探讨白盒测试的核心技术,包括控制流测试、数据流测试以及静态分析等方法,同时介绍当前流行的白盒测试工具,并讨论如何在实际项目中有效实施白盒测试。文章的目标是为软件测试工程师提供一份综合性指南,帮助他们更好地理解和应用白盒测试技术。