noseeflower
  • 技术杂谈
    • linux使用clash
  • Appium
    • Appium安装与环境配置
    • python运行和模拟器配置
    • Appium Inspector与元素定位
  • bug-hunter
    • 文件上传漏洞
Powered by GitBook
On this page
  • appium inspector安装与使用
  • 元素定位
  1. Appium

Appium Inspector与元素定位

Previouspython运行和模拟器配置Next文件上传漏洞

Last updated 1 year ago

appium inspector安装与使用

下载链接:https://github.com/appium/appium-inspector/releases

当然也可以在web端使用:https://inspector.appiumpro.com/

安装完成后,双击打开客户端,会看到这么个界面

在右下部分的json输入框中输入如下内容

{
  "platformName": "Android",
  "appium:automationName": "uiautomator2",
  "appium:deviceName": "ETS4C19927012559",
  "appium:appPackage": "com.android.settings",
  "appium:appActivity": ".Settings",
  "appium:appWaitForLaunch": false
}

填写完毕后页面的参数会自动填充

注:配置里的deviceName、appPackage、appActivity都是需要自己根据实际情况填写的,不要照抄,appWaitForLaunch这个参数是防止一些手机运行不了appium的服务

点击右下角的start session即可连接

如果是真机则需要打开开发者模式、USB调试等一些权限,不同品牌的手机不一样,不在此详细讲述

简单介绍一下标点处的功能

1:查看工具:点击界面元素之后会在右侧显示该元素的详细信息

2:滑动工具:模拟在屏幕上进行滑动的操作

3:点击工具:模拟在屏幕上进行点击的操作

元素定位

  • 通过ID定位

这里使用查看工具点击应用文件夹,右侧展示该元素的详细信息

id通常是唯一值,可以直接通过id来进行定位

ele = dr.find_element(AppiumBy.ID, 'com.huawei.android.launcher:id/preview_background')

  • 通过Xpath定位

若是xpath比较简短,且不带很多的索引符号,可以直接套用

ele_xm = dr.find_element(AppiumBy.XPATH, '//android.widget.TextView[@content-desc="熊喵大师运营版"]')

当xpath比较长,或是有很多索引符号时,就不建议直接复制,而是自行去构建xpath路径

注:一定要注意看当前元素的一些状态,比如这里的clickable是false说明是不可点击的,那么该元素就不能进行点击这个操作,所以进行元素定位的时候需要仔细核验

当然还有无敌的Xpath轴定位

ele_kc = dr.find_element(AppiumBy.XPATH, '//android.view.View[@text="库存管理"]/parent::android.view.View')
轴名称
结果

ancestor

选取当前节点的所有先辈

attribute

选取当前节点的所有属性

child

选取当前节点的所有元素

parent

选取当前节点的父节点