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 ...
随机推荐
- OpenJudge 1.5.35:求出e的值
35:求出e的值 总时间限制:1000ms 内存限制:65536kB 描述 利用公式e = 1 + 1/1! + 1/2! + 1/3! + ... + 1/n! 求e . 输入 输入只有一行,该行包 ...
- Android 使用压缩纹理
本文介绍了什么是压缩纹理,以及加载压缩纹理的核心步骤.并在 Android OpenGLES 平台上实现了压缩纹理的显示. 一.压缩纹理概念 传统的图片文件格式有 PNG . JPEG 等,这种类型的 ...
- C#-11 接口
一 什么是接口 接口是指定一组函数成员而不实现它们的引用类型. class Program { static void FlyFunc(IFly obj) { obj.Fly(); } static ...
- PHP全栈开发(四): HTML 学习(1.基础标签+表格标签)
简单的学习一下HTML 学习HTML采用在www.runoob.com上学习的方法. 而且该网站还提供在线编辑器. 然后HTML编辑器使用Notepad++ 记得上Emmet的官网http://emm ...
- 记一次 .NET 某企业OA后端服务 卡死分析
一:背景 1.讲故事 前段时间有位朋友微信找到我,说他生产机器上的 Console 服务看起来像是卡死了,也不生成日志,对方也收不到我的httpclient请求,不知道程序出现什么情况了,特来寻求帮助 ...
- 12.MongoDB系列之副本集管理
1. 控制成员状态 1.1 把主节点变为从节点 rs.stepDown() 1.2 阻止选举 如果需要对主节点维护,不想期间其他从节点选举为主节点,则可以 rs.freeze(10000) 维护完成后 ...
- 函数柯里化实现sum函数
需求 实现sum函数,使其可以传入不定长参数,以及不定次数调用 //示例 console.log(sum(1,2)(3)()) //6 console.log(sum(2,3,4,5)(1,2)(3) ...
- 这次彻底读透 Redis
1. Redis 管道 我们通常使用 Redis 的方式是,发送命令,命令排队,Redis 执行,然后返回结果,这个过程称为Round trip time(简称RTT, 往返时间).但是如果有多条命令 ...
- SpringBoot Starter缘起
SpringBoot通过SpringBoot Starter零配置自动加载第三方模块,只需要引入模块的jar包不需要任何配置就可以启用模块,遵循约定大于配置的思想. 那么如何编写一个SpringBoo ...
- 写一个shell,自动执行jmeter测试脚本
贡献一个自己写的shell脚本,很简单,但又可以高效率的自动执行jmeter压测脚本. #!/bin/bash #author:zhangyl #version:V1 #该脚本放置于压测脚本的上一层目 ...