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 ...
随机推荐
- jumpserver 2222端口的使用
可以这样理解: 通过在jumpserver的web界面添加的用户,相应的也有权限通过远程使用命令的方式登陆jumpserver,进行相应的管理,只不过使用的端口是2222端口,不是常见的22端口. 一 ...
- flutter系列之:查询设备信息的利器:MediaQuery
目录 简介 MediaQuery详解 MediaQuery的属性 MediaQuery的构造函数 MediaQuery的使用 总结 简介 移动的开发中,大家可能最头疼的就是不同设备的规格了,现在设备这 ...
- Tubian0.43,完善对QQ微信的支持
Sourceforge.net下载:https://sourceforge.net/projects/tubian/ 123网盘下载: https://www.123pan.com/s/XjkKVv- ...
- 内存映射IO(MMIO)
端口I/O 介绍: 一种I/O编址方式是端口映射I/O(port-mapped I/O), CPU使用专门的I/O指令对设备进行访问, 并把设备的地址称作端口号. 在执行其中的一条指令时,CPU使用地 ...
- Windows Server 2012部署遇到的问题
一.安装IIS提示"服务器管理器WinRM插件可能已损坏或丢失" 解决方案: 1.开启WinRM服务,添加ip监听 在服务中查看WinRM服务是否开启,如果没有开启则把该服务开启, ...
- Shell揭秘——程序退出状态码
程序退出状态码 前言 在本篇文章当中主要给大家介绍一个shell的小知识--状态码.这是当我们的程序退出的时候,子进程会将自己程序的退出码传递给父进程,有时候我们可以利用这一操作做一些进程退出之后的事 ...
- Ruoyi表单构建
Ruoyi表单构建通过拖动组件就能自动生成前端代码,很方便,所以本文简单通过上层函数源码来梳理一下大致流程,如有需要再自行仔细一行行分析底层代码. 组件拖动 实现组件拖动功能主要依赖第三方库:VueD ...
- TensorFlow?PyTorch?Paddle?AI工具库生态之争:ONNX将一统天下
作者:韩信子@ShowMeAI 深度学习实战系列:https://www.showmeai.tech/tutorials/42 本文地址:https://www.showmeai.tech/artic ...
- 出现The server time zone value ‘�й���ʱ��‘ is unrecognized的解决方法
使用mybatis链接数据库时出现如下错误, The server time zone value '�й���ʱ��' is unrecognized or represents more tha ...
- Java函数式编程:三、流与函数式编程
本文是Java函数式编程的最后一篇,承接上文: Java函数式编程:一.函数式接口,lambda表达式和方法引用 Java函数式编程:二.高阶函数,闭包,函数组合以及柯里化 前面都是概念和铺垫,主要讲 ...