首页 > 其他分享 >appium 使用

appium 使用

时间:2024-07-04 15:57:59浏览次数:18  
标签:定位 appium AppiumBy 元素 element 使用 appiumBy click

refer to: python+appium2~inspector工具使用及定位操作元素~_哔哩哔哩_bilibili

1 APPium Inspector 可以查看Android应用的 包名 和activity

打开APP,且处于启动页面

 

Q1 noReset=True 设置每次APP启动 不重头 初始化环境

怎么实现呢

 

Q1 那我们现在用的是appium1 还是 appium2呢, 直接从当前界面执行测试代码

 

 

2定位元素 常用的方法

【常用】

appiumBy.XPATH    (路径比较短比较好用,  若路径比较长 或有换行时,可能不好用)

或自定义xpath(前提是,text 属性有值)  driver.find_element(AppiumBy.XPATH("//*[@text='搜索']");

appiumBy.Accessiblity_ID (根据元素的content-desc 属性定位)

appiumBy.ClassName     ( 每个元素都有className,  但是Android 的 很多元素 class 属性都是相同的)

  定位单个元素: driver.find_element(AppiumBy.Class_Name ("name1"))  //多个元素时,是返回的第一个

  定位多个个元素: driver.findElements(AppiumBy.className(className));

 

【不常用】

appiumBy.id   ,很多元素没有ID

 

操作元素

 

1、点击

AtsOSUtils.findByXpathClassName(Mobil).click();
----------
static List<WebElement> webElements;
webElements = AtsOSUtils.findByClassName("android.widget.ImageView");
webElements.get(index).click();

2、输入值(文本框)

WebElement element = CommonUtils.byXpath(inputAmount);
element.click();
element.sendKeys(amount);

3、清空文本框的内容

element.clear();


3排查定位不到元素的可能原因

1、appium 定位的是layout 不是元素本身,这时可以往下查看

 

标签:定位,appium,AppiumBy,元素,element,使用,appiumBy,click
From: https://www.cnblogs.com/ww-xiaowei/p/18283839

相关文章

  • Linux下使用arping检测IP地址是否冲突
    arping简介在Linux中,arping是一个用来发送ARP请求到一个相邻主机的工具,通常用于检测网络上的IP地址冲突。使用arping检测IP地址是否冲突的方法例1:使用如下命令检测10.206.216.95是否冲突(使用-I参数指定网络接口)#arping-Ieth010.206.216.95ARPING10.206.216.95......
  • java使用Netty实现TCP收发消息的例子,多线程并且含断线自动重连
    需求:有一个TCP的服务,需要使用Netty开发一个TCP连接并收发消息的程序。要求多线程并且含断线自动重连能力。组织结构,使用JavaMaven编程方式功能还包含读取配置文件和log4j2写日志部分 完整代码:App.javapackagecom.LSpbxServer;importorg.slf4j.Logger;import......
  • Playwright for .NET使用
    安装全局工具:#安装全局工具dotnettoolinstall--globalMicrosoft.Playwright.CLI#创建项目dotnetnewconsole-nConsole1cdConsole1#安装依赖dotnetaddpackageMicrosoft.Playwright#用Playwright工具安装所需的浏览器C:\Users\Administrator\AppData\Lo......
  • 使用g++对c++进行编译链接
    静态库静态库的生成静态库实际就是多个.o的归档(文件夹)//在bash终端执行依次执行以下g++命令.g++-csrc1.cppsrc2.cpparcrvlibmy.asrc1.osrc2.o查看静态库内容://输出src1.0,src2.0,这也验证了静态库.a文件实际就是个归档目录ar-tlibmy.a......
  • 使用教程
    一、概述本产品能够实现两点之间的P2P直连内网穿透,不用通过中继服务器提供流量中转服务。本产品采用了最先进的P2P算法,即便对称型NAT在内的大多数连接也可实现P2P通讯。因为在数据传无需中继服务器作为中转,具有强劲的传输速度和安全性。数据在传输过程中采用各类加密传输......
  • 怎么使用零代码平台,在线搭建一套应用系统 — 敲敲云免费
    应用基础操作:包含创建应用、修改应用、退出/删除应用、排序应用、维护应用、应用回收站1、新建应用进入你的组织,点击左侧的应用,然后点击新建应用新建应用的创建者为应用的拥有者,默认拥有管理员权限2、修改应用名称和主题应用中点击...,找到修改名称和主题,点击即可,支持......
  • java 事件回调的写法,使用回调接口方式
    java编写时,尤其是先用C#语言后转成java的,在编程时一定会遇到,java中没有委托事件的概念。那主类App.java类中实例了一个A对象,那A对象因为某种原因触发了一个事件,想回调App.java中的一个函数,应该怎么写呢?在java中有多有方法来实现,这里讲下回调接口方式,我感觉这种方式比较好理解......
  • C语言函数静态库和动态库的创建和使用
    使用库函数是源码的一种保护???<我猜的.>库函数其实不是新鲜的东西,我们一直都在用,比如C库.我们执行pringf()这个函数的时候,就是调用C库的函数. 下面记录静态库和动态库的生成和使用. 静态库:libxxx.a动态库:libxxx.so 静态库: 在程序编译的时候,将库编译进可......
  • HTML5 WebSocket技术使用详解
    HTML5WebSocketAPI提供了一种在单个连接上进行全双工通信的方式。这意味着客户端和服务器可以同时发送和接收数据,而不需要像传统的HTTP请求那样进行多次请求和响应的轮询。WebSocket允许更实时的交互,非常适合需要快速、连续数据交换的应用场景,如在线游戏、实时通讯和股票行......
  • 详解Web应用安全系列(7)使用具有已知漏洞的组件
    使用具有已知漏洞的组件,这种安全漏洞普遍存在,基于组件开发的模式使得多数开发团队根本不了解其应用或API中使用的组件,更谈不上及时更新这些组件了。下面就分别以.NET和Java各分享一个案例。.NET案例:XmlSerializer反序列化漏洞案例描述在.NET框架中,XmlSerializer类是一个常......