Appium工具
1、安装
(1)jdk安装以及环境配置
a.jdk下载地址:https://www.oracle.com/cn/java/technologies/downloads/
新建系统环境变量:

b.编辑Path环境变量

c.验证是否安装好

(2)Androoid SDK安装与变量配置
a.下载:https://www.androiddevtools.cn/

b.解压,运行SDK Manager.exe,安装包

c.安装完成,验证是否安装好

3、模拟器安装:雷电模拟器,注意记得安装路径
4、复制D:\android-sdk-windows\platform-tools中的adb.exe,粘贴到模拟器安装目录中,把自带的adb.exe替换掉


5、adb
(1)ADB简介:ADB全称为Android Debug Bridge,起到调试桥的作用,是一个客户端-服务器端程序。其中客户端是用来操作的电脑,服务端是Android设备。
ADB也是Android SDK中的一个工具,可以直接操作管理Android模拟器或者真实的Android设备。
为什么要用ADB?
ADB可以直接操作管理手机模拟器或者真实的手机设备(如三星手机)。它的主要功能有:
a.运行设备的shell(命令行)
b.管理模拟器或者设备的端口映射
c.计算机和设备之间上传/下载文件
d.可以对设备的应用进行卸载安装等
其实简而言说,adb就是连接Android手机与PC端的桥梁,可以让用户在电脑上对手机进行全面的操作!
(2)adb常用命令:
a.adb devices:获取设备列表和设备的状态

b.adb get-state:获取设备的状态(设备的状态有三种:device,设备连接正常;offline,连接出现异常,设备无响应;unknown,设备未连接)

c.adb kill-server,adb start-server:结束,启动adb服务
d.adb install -r packages:保留数据及缓存文件安装新包
e.adb uninstall:卸载应用(应用包名)
f.adb pull:将设备上的文件复制到电脑上
g.adb push:将电脑上的文件复制到设备上
h.adb reboot:重启设备
i.adb connect:远程连接设备
j.adb disconnect:断开设备连接
k.adb --version:可以显示adb的版本号

l.adb shell登录设备
m.adb -s 设备 shell多设备显示时用-s
n.adb install packsge 安装包
o.adb uninstall -k packages卸载包但保留数据
p.adb shell pm list packages 查看手机里面所有包名
q.adb shell pm list packages -3查看手机里面所有第三方包名
r.adb logcat 查看日志
6、安装Appium Desktop服务端
下载地址:https://github.com/appium/appium-desktop/releases


8、启动服务

(1)Appium Desktop的界面有三个选项卡:
a.Simple:基础配置
Host:服务端的主机地址
Appium客户端运行时,会通过该地址发送请求到Appium服务端,默认为0.0.0.0,代表服务端所有主机的所有IP
Port:服务端的主机端口
默认4723,Appium客户端与Appium服务端通过4723端口通讯
b.Appium Desktop高级配置

General:常规选项,进行Android和IOS自动化测试时公共的设置项
IOS:仅包含用于IOS自动化测试的设置下
Android:仅包含用于Android自动化测试的设置下:这些选项并不要求强制设置,只有在少数情况下需要设置,所以不需要的时候可以跳过
c.Appium Desktop预设配置


高级配置保存的信息会显示在这里
在这里可以配置环境变量
(2)服务启动界面
在Simple中输入服务器地址和端口后,点击StartServer即可启动服务,窗口会自动跳转到服务端运行的日志屏幕界面
在服务端的日志屏幕右上方,三个功能按钮的含义分别是:
启动Appium的Inspector工具,进行移动应用的元素检测
查看Appium的原始日志
停止Appium的服务端的运行

10.下载Appium Inspector。
由于高版本Appium(从1.22.0开始)的服务和元素查看器分离,所以还需要下载Appium Inspector。否则打开Appium Server GUI,点击搜索按钮会显示inspectorMoved(低版本才会直接显示Start Inspector Session):

下载地址:https://github.com/appium/appium-inspector,在readme.md中找到Releases,如下图,

点击后选择需要的版本,这里选择zip版本:

解压后打开Appium Inspector.exe

填写appium:platformName,appium:platformVersion,appium:deviceName(deviceName通过cmd输入adb devices获得)等信息。

参数:
1、deviceName连接设备名称
2、platformName操作系统名称
3、platformVersion操作系统版本
和软件相关内容
appPackage被测试的软件(APP)包
问题:软件包的名称是什么?
adb shell进行adb命令页面
pm list packages 展示所有的软件安装包

pm list packages -3展示所有的第三方包

appActivity:被测试的入口
1|aosp:/ # dumpsys window windows |grep current -i,找到当前窗口的名
onRest是否清除缓存


Appium工具的更多相关文章
- APP自动化环境搭建之appium工具介绍(二)
1.下载解压android-sdk-windows-appium //配置环境: ANDROID_HOME:D:\android-sdk-windows-appium path:...;%ANDROI ...
- 自动化工具之Appium工具简单介绍
背景 自动化,性能测试,接口测试,开发平台等工作,到底测试的价值在哪里,其实价值来源不断充实与为大众服务,今天简单介绍ui小工具appium攻击. 简单介绍 Appium 是一个自动化测试开源工具,支 ...
- 四:RF框架appium工具之xpath定位
XPATH定位方法具体的学会,还是在今年1月份,以前运用的都不熟练. 这个定位神器是一定要掌握的,不然有你抓狂的时候. 第一要掌握它的书写格式,这个好上手. 第二要掌握它的具体用法.这个就要多练习了, ...
- app自动化的webView页面测试思路(appium工具)。
1.获取当前activity多有的handles,然后去遍历它,发现webView后切换到webView对应模式,就可以了.进一步操作webView的话用下面的方法(driver.getPageSou ...
- appium工具 录制的方法
参考: https://www.jianshu.com/p/5eef1bfa42ae
- appium常见问题06_如何解决uiaotomator定位工具报错
在使用uiaotomator工具定位元素过程中,经常会弹出报错,截图失败,导致无法定位元素,当遇到该问题时,解决办法如下: 方法一:拔掉手机usb连接,重新连接手机 方法二:adb杀掉手机服务,重起服 ...
- appium+python做移动端自动化测试
1 导言 1.1 编制目的 该文档为选用Appium作为移动设备原生(Native).混合(Hybrid).移动Web(Mobile Web)应用UI自动化测试的相关自动化测试人员.开发人员等提供 ...
- Appium的入门使用
ps:有没有人和我一样觉得Appium官方文档写的很烂的, 这官方文档,还不如很多人写的博客详细,而且对于初学的入门者实在是不够友好, 官网:https://github.com/appium/jav ...
- 移动端自动化测试(一)之 Appium+Pyhton环境准备篇
移动端自动化测试(一)之 Appium+Pyhton环境准备篇 2016-11-17 16:51 by CockRoacher, 5046 阅读, 1 评论, 收藏, 编辑 由于工作的需要进行Andr ...
- appium环境搭建及项目实战
手机端自动化环境搭建比其他自动化环境搭建较为复杂,安装工具有点多,也会有很多坑,安装工具一定注意版本号对应问题. 一.我的电脑环境:win7 64位,安卓测试机4.4.2版本,Python3.6,a ...
随机推荐
- img和div之间有间隙的原因及解决方法
div 中 存在 img标签,由于img标签的 display:inline-block 属性. #####display:inline-block布局的元素在chrome下会出现几像素的间隙,原因是 ...
- 【持久层框架】- SpringData - JPA
SpringData - JPA 生命不息,写作不止 继续踏上学习之路,学之分享笔记 总有一天我也能像各位大佬一样 一个有梦有戏的人 @怒放吧德德 分享学习心得,欢迎指正,大家一起学习成长! JPA简 ...
- 我操作MySQL的惊险一幕
背景 前几天因工作需要,组长给我安排了一个数据清洗的任务. 任务:把 A 表的数据洗到 B 表. 我的第一反应,什么是「洗」?洗数据是什么?洗钱我倒是知道. 不过我不能慌啊,于是问了问组长. 我:组长 ...
- Educational Codeforces Round 106 (Rated for Div. 2)
就ac了2题... A题一开始题意模模糊糊的似懂非懂,然后自己按样例推出了题意,简单题很容易ac了.还是自己的英语水平太菜了.... B题根据0和1的位置关系能看出来,因为0不能在1后面, 所以有00 ...
- 洛谷P2880 [USACO07JAN] Balanced Lineup G(树状数组/线段树)
维护区间最值的模板题. 1.树状数组 1 #include<bits/stdc++.h> 2 //树状数组做法 3 using namespace std; 4 const int N=5 ...
- 代码随想录第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II
2022/09/22 第二天 第一题 这题我就直接平方后排序了,很无脑但很快乐啊(官方题解是双指针 第二题 滑动窗口的问题,本来我也是直接暴力求解发现在leetCode上超时,看了官方题解,也是第一次 ...
- Go Micro介绍与入门
一 什么是Micro? Micro是一个微服务生态系统,致力于提供产品,服务和解决方案,以实现现代软件驱动型企业的创新.我们计划成为任何与微服务相关的事实资源,并期待公司能够利用这项技术为自己的业务. ...
- Linux-->磁盘分区,挂载
Linux分区 原理介绍 Linux无论有几个分区,分给哪一个目录使用,他归根结底都只有一个根目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分. Linux采用了一 ...
- 快速上手Spring项目
通过maven依赖管理导入所需Jar包 注 : spring 需要导入commons-logging进行日志记录 . 我们利用maven , 他会自动下载对应的依赖项 . <dependency ...
- Python-D4-语法入门2
目录 数据类型 数据类型之整型int 数据类型之浮点型float 数据类型之字符串str 数据类型之列表list 数据类型之字典dict 基本数据类型之布尔值bool 基本数据类型之元祖tuple 基 ...