Appium移动自动化测试——app控件获取之uiautomatorviewer

news2024/9/21 16:31:51

下载手机YY
http://yydl.duowan.com/mobile/yymobile_client-android/5.4.2/yymobile_client-5.4.2-881.apk

若链接失效,请自行百度

新建maven空白工程
前置条件:安装eclipse,及其maven插件,请自行百度

新建的工程如下:

在这里插入图片描述
新建目录apps,并将下载的安装包,拷贝到该目录下

打开POM增加依赖和插件
插入依赖

在这里插入图片描述


org.testng
testng
6.8.7
test


io.appium
java-client
4.0.0


org.seleniumhq.selenium
selenium-server-standalone
2.46.0

插入插件

org.apache.maven.plugins maven-compiler-plugin 2.3.2 1.7 1.7 UTF-8 org.apache.maven.plugins maven-surefire-plugin 2.8.1 maven-resources-plugin 2.4 UTF-8

新建测试类,编写代码
新建类yy.ClickTest.java

在这里插入图片描述
设置capabilities,初始化AndroidDriver

在这里插入图片描述
capabilities的详细说明,请参见另一篇博文:http://blog.csdn.net/kaka1121/article/details/51733779

上图中,都是必填属性

其中如果已经在手机上安装好了app,那么选择①中的配置

如果需要每次都重新安装app,那么选择②中的配置

①中的appPackage和appActivity可以使用sdk自带工具aapt获得,也详见上文提到的capabilities博文

编写所需要的相关方法

在这里插入图片描述
因为手机YY安装好后,会出来欢迎页面,需要按住屏幕向左滑动4次,并按下“立即体验”按钮,因此,需要上述两个方法。


方法①,按住屏幕中间,向左滑动,图示已经很清楚,不再赘述。

方法②,查看一个控件是不是存在,用于查看是否已经滑动到了包含“马上体验”按钮的页面,停止滑动。

编写测试代码
下面,我们来编写测试代码

代码需要完成的事情:

①进入欢迎页面,需要按住屏幕向左滑动n次,直到出现“马上体验”按钮

②点击“马上体验”按钮,进入主页

③点击直播,完成。

代码如下图所示:


其中,代码内获取控件都通过ID来获取,比如拿到“马上体验”按钮的ID,如下图,使用UIautomatorviewer


更多UIautomatorviewer信息,见博文:http://blog.csdn.net/kaka1121/article/details/51762200

连接手机,打开appnium
使用USB调试模式,连接到手机,细节请自行百度

要说明的是,要勾选USB调试,不勾选“监控ADB安装应用”


appnium安装见http://blog.csdn.net/kaka1121/article/details/51698700

打开appnium,点击开始,连接手机


连接成功后,效果如下:


运行代码
运行代码,则会在手机上运行:

卸载YY

安装手机YY

打开手机YY欢迎页面

按住屏幕向左滑动4次

按下“立即体验”按钮

按下“直播”按钮

最后:下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/343423.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kylin查询下压的设置、Sparder查询引擎详细介绍、HDFS文件目录含义

目录1. 查询下压设置2. Sparder查询引擎详细介绍3. HDFS文件目录含义1. 查询下压设置 如果未开启查询下压,则查询有很多限制。这是因为只能查询cube中的数据,而不能通过spark sql查询Hive中的源数据 开启查询下压,优先从cube中查询数据&…

百度前端常考vue面试题(附答案)

怎么实现路由懒加载呢 这是一道应用题。当打包应用时,JavaScript 包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问时才加载对应组件,这样就会更加高效 // 将 // import UserD…

因新硬件支持内核问题Ubuntu 22.04.2推迟发布

导读Ubuntu 22.04.2 LTS 原定于 2 月 9 日发布。但 Canonical 宣布该版本因各种问题不得不推迟两周,定于 2 月 23 日发布。 Ubuntu 22.04.2 LTS 原定于 2 月 9 日发布。但 Canonical 宣布该版本因各种问题不得不推迟两周,定于 2 月 23 日发布。 Canonica…

2023全网最火的接口自动化测试,一看就会

目录 接口自动化测试用例设计Excel接口测试用例访问MySQL接口测试用例访问PyTest测试框架接口自动化测试必备技能-HTTP协议request库实现接口请求 引言 与UI相比,接口一旦研发完成,通常变更或重构的频率和幅度相对较小。因此做接口自动化的性价比更高&…

AI是超越还是桎梏?从ChatGPT到5G+AI,我们在聊什么?

从家常里短聊到科技创新,从人文故事探讨到物理科学,诞生2个月用户即破亿的ChatGPT正成为火爆全球的AI应用工具,其强大的能力超乎人们想象。这款几乎博学多识的聊天机器人能运用AI系统进行简洁的交流,完成各种指令信息的表达。面对…

Prometheus 自动发现监控AWS EC2实例

本文章简述对接自动发现AWS云EC2实例 前提环境: PromethuesGrafanaAWS IAM权限 涉及参考文档: AWS EC2Grafana 通用监控模板 一、IAM 用户创建 1、创建Prometheus 策略 策略规则: {"Version": "2012-10-17",&quo…

【实际开发18】- 静态 3

目录 1. 调试与评估 2. 单元测试的管理 1. 单元测试的文档 3. 系统集成的模式与方法 1. 集成测试前的准备 2. 集成测试的模式 3. 大棒集成方法 ( Big-bang Integration) 4. 自顶向下和自底向上集成方法 1. 自顶向下法 ( Top-down Integration ) 2. 自底向上法 ( Bott…

linux如何查看编译器支持的C++版本(支持C++11、支持C++14、支持C++17、支持C++20)(编译时不指定g++版本,默认使用老版本编译)

文章目录C各个版本C11C14C17C20查看自己的编译器支持C哪个版本注意:编译时不指定g版本,默认使用老版本编译(存疑)C各个版本 C11 C11是一个重要的C标准版本,于2011年发布。C11带来了许多重要的改进,包括&a…

vue3封装数值动态递增组件

vue3封装数值动态递增组件前言源码举个例子:前言 1)使用技术: vue3.2 Ts 2)组件接收参数: 参数类型意义是否可选valuenumber数值大小必填durationnumber递增动画持续时间(单位:s)…

PyTorch学习笔记

PyTorch学习笔记(一):PyTorch环境安装 往期学习资料推荐: 1.Pytorch实战笔记_GoAI的博客-CSDN博客 2.Pytorch入门教程_GoAI的博客-CSDN博客 安装参考: 1.视频教程:3分钟深度学习【环境搭建】CUDA Anacon…

javascript测试二

一、 选择题(共10题,每题2分)1、在JavaScript中,想要一次跳出方法的多层循环结构需要用(C ) A) breakB) continueC) returnD) false2、 下列关于嵌套循环以下说法正确的一项是(A )。A) 每一种循环结构内部也…

Elipse报错:Failed to load the JNI shared library jvm.dll解决方法

情景 导入Elipse的项目中有jar包和64位版本的JDK不兼容。 于是我安装了32位版本的JDK。 配置好系统环境后,重启Eclipse却遇到了这个问题。 原因 搜索后了解到,是因为Eclipse版本与JDK版本不匹配。 我的Eclipse是64位的,但JDK配置是32位的…

科技云报道:2023年,可观测性迎来哪些新趋势?

科技云报道原创。 可观测性不是一个新鲜的名词,但是近年来随着云原生技术的发展,在带来效率、可用性提升的同时也增加了复杂度,而可观测性成为降低这种复杂度的唯一手段,因此被推到了前所未有的重要地位。 Gartner将应用可观测…

前端面试常考 | 浅拷贝与深拷贝

文章目录一. 前言1. 概述2. 数据类型3. 存储区别二. 深浅拷贝1.深浅拷贝的定义2. 基本数据类型的拷贝3. 引用类型的拷贝4. 实现 “浅” 拷贝1. Object.assign()2. slice()3. concat()方法4. es6展开运算符5. 实现 “深” 拷贝1. JSON.parse(JSON.stringify(obj))2. lodash3. 递…

ASEMI代理FGH60N60,安森美FGH60N60车规级IGBT

编辑-Z 安森美FGH60N60车规级IGBT参数: 型号:FGH60N60 集电极到发射极电压(VCES):600V 栅极到发射极电压(VGES):20V 收集器电流(IC):120A 二…

2023年1月国产数据库大事记-墨天轮

本文为墨天轮社区整理的2023年1月国产数据库大事件和重要产品发布消息。 目录 1月国产数据库大事记(时间线)产品/版本发布兼容认证排行榜新增数据库厂商活动相关资料 1月国产数据库大事记(时间线) 1月6日消息,近日…

将小程序代码转成uni-app代码

最近因为公司项目原因需要将小程序的项目转换成uni—app的项目,所以总结了以下几点: 首先你可以先到uni-app的官网简单看一下对它的介绍,本次文章的介绍是针对简单的微信小程序来进行的转化。 在这之前我们来看一下目录对比 下面就来介绍一下…

Python绝对路径和相对路径详解

在介绍绝对路径和相对路径之前,先要了解一下什么是当前工作目录。什么是当前工作目录每个运行在计算机上的程序,都有一个“当前工作目录”(或 cwd)。所有没有从根文件夹开始的文件名或路径,都假定在当前工作目录下。注…

怎么编写PCIe设备驱动程序

怎么编写PCIe设备驱动程序 文章目录怎么编写PCIe设备驱动程序参考内核文件:一、 PCI总线设备驱动模型二、 获得PCIe设备的资源2.1 获得内存/IO空间2.2 获得中断号2.2.1 获得INTx中断号2.2.2 获得MSI-X/MSI中断号三、 使能设备致谢参考内核文件: Documen…

智慧税务+数据可视化:企业财务管理告别难题

一、引言在发展社会主义市场经济的过程中,税收承担着组织财政收入、调控经济、调节社会分配的职能。中国每年财政收入的90%以上来自税收,其地位和作用越来越重要,可称之为国家经济的“晴雨表”,有效进行税务管理、充分挖掘税务大数…