android自动化必备之界面元素
包名&类名
packageName(包名)
应用的身份标识,系统通过包名识别不同的应用,如两个相同包名的应用在安装时候会覆盖
activityName(类名)
Activity:android四大组件之一,简单来说就是一个页面,和用户进行交互,activity通过setContentView方法加载布局文件,使得布局能够显示在手机上
简单来说,appium中指定了包名,就相当于可以找到对应所测试的应用,指定了类名,相当于找到测试应用的某一个页面。
布局&控件
通过appium自带的工具inspector或者SDK包下的uiautomatorviewer工具即可查看到app页面的结构
app页面由布局+控件组成
在android中,有五大布局,这些布局就相当于容器,这些容器里可以放控件也可以放另外一个容器(嵌套)
常见布局类型如下:
框架布局(FrameLayout):
所有控件都放置在最左上的区域
下一个子控件会重叠覆盖上一个控件
线性布局(LinearLayout):
控件的排序方式:水平/垂直
绝对布局(AbsoluteLayout):
采用坐标轴的方式定位控件
左上角原点(0,0),往右X轴递增,往下Y轴递增
相对布局(RelativeLayout):
根据参照物(某控件)的位置。来确定控件的位置
表格布局(TableLayout):
通过表格方式(行,列)布局控件位置
常见控件:
TextView(文本控件):
展示文本/文字
EditText(编辑输入框):
用于接收用户输入的数据
Button(按钮):
用户通过点击Button触发一系列的事件
CheckBox(复选按钮):
列表选择,单选、多选
ImageView(图片控件):
用于显示图片
ProgressBar(加载进度条):
表示正在加载某一些数据
坐标系统
在对界面元素定位的时候有些场景我们可能会使用到坐标,在android系统中坐标包括有x轴、y轴、z轴(一般来说自动化我们不需要考虑z轴)
手机的原点就是屏幕的左上角这个点,从横向看就是x轴的方位,竖向看就是y轴的方位
Tips:通过在android手机开发者选项->输入,找到显示触摸操作和指针位置,开启之后再屏幕上方即可看到当前元素的坐标
============================ PS ==============================
请大家支持原创,尊重原创,如要转载,请注明出处:“转载自:http://www.cnblogs.com/yyoba/”,谢谢!!有任何疑问,欢迎大家留言区艾特我。
android自动化必备之界面元素的更多相关文章
- android自动化必备之SDK
进入到SDK包中,通过打开SDK manager.exe即可看到SDK管理界面,可能部分童靴发现一直在加载出不来,我们需要设置代理来解决: 选择工具栏上的Tools->Options打开如下窗口 ...
- Android开发者必备的42个链接
http://mobile.51cto.com/ahot-426035.htm Android开发者必备的42个链接 下面收集了42个帮助大家学习Android的内容链接,部分内容是面向初学者的,帮助 ...
- 篇3 安卓app自动化测试-搞定界面元素
篇3 安卓app自动化测试-搞定界面元素 --lamecho辣么丑 1.1概要 大家好! 我是lamecho(辣么丑),今天是<安卓app自动化测试>的第三 ...
- Android自动化框架介绍
随着Android应用得越来越广,越来越多的公司推出了自己移动应用测试平台.例如,百度的MTC.东软易测云.Testin云测试平台…….由于自己所在项目组就是做终端测试工具的,故抽空了解了下几种常见的 ...
- Android自动化框架 模拟操作 模拟测试
转自:http://bbs2.c114.net/home.php?mod=space&uid=1025779&do=blog&id=5322 几种常见的Android自动化测试 ...
- Android自动化框架
Android自动化框架 已有 2085 次阅读2014-8-26 12:19 | Android 几种常见的Android自动化测试框架及其应用 随着Android应用得越来越广,越来越多的公司推出 ...
- 使用Monkeyrunner进行Android自动化的总结
http://www.2cto.com/kf/201411/356056.html 使用Monkeyrunner进行Android自动化的总结 使用Android自动化的方式,不仅可以用来对Andro ...
- [转] Android自动化测试之使用java调用monkeyrunner(五)
Android自动化测试之使用java调用monkeyrunner 众所周知,一般情况下我们使用android中的monkeyrunner进行自动化测试时,使用的是python语言来写测试脚本.不过, ...
- 精美的 ( Android, iPhone, iPad ) 手机界面设计素材和线框图设计工具
在制作界面原型的时候,如果有现成的界面基础元素可以使用的话,设计师就可以非常快速的完成原型的制作,能够节省大量的时间和精力.在这篇文章, 我向大家分享45套非常有用的 UI 和 Wireframe 套 ...
随机推荐
- python实现bt种子 torrent转magnet
Python实现bt转磁链 参考前人资料主要两种方式 1,利用python的bencode模块 2,安装libtorrent模块 尝试过两种方法特记录 环境:Windows系统 python 3 ...
- 【转】一个 Linux 上分析死锁的简单方法
简介 死锁 (deallocks): 是指两个或两个以上的进程(线程)在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这 ...
- laravel-更换语言包
第一步:找语言包 找到比较靠谱的语言包(根据下载量与收藏量综合判断),而且要是laravel的 扩展的链接:https://packagist.org/packages/caouecs/laravel ...
- 手绘raft算法
手绘raft算法 互联网技术窝 2019-04-07 12:06:05 在现实的分布式系统中,不能可能保证集群中的每一台机器都是100%可用可靠的,集群中的任何机器都可能发生宕机.网络连接等问题导致集 ...
- this()基础用法
this()表示调用构造方法,此种调用只能用在构造方法中,即构造方法中调用构造方法this(实参). 1.this().this(实参)必须方法构造方法的第一行 2.在有参数构造方法中调用无参数构造方 ...
- 如何创建并初始化程序集里List类型的反射
参考网址:http://stackoverflow.com/questions/315231/using-reflection-to-set-a-property-with-a-type-of-lis ...
- shell脚本学习-练习写一个脚本1
# 1.依次展示/etc/passwd中的用户名和UID.格式如:Hello,$USER,your UID is $UID. # 2.统计一个有多少个用户 #!/bin/bash #Program D ...
- 在struts.xml中配置默认action遇到的问题
初始代码: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC & ...
- JS格式化日期时间的方法
//格式化时间的方法 function format(fmt, date) { var o = { "M+": date.getMonth() + 1, //月份 "d+ ...
- 前后台分离开发时遇到循环引用问题"$ref"
1. 遇到的问题 { "errMsg": "", "data": { "baseinfo": { "freeT ...