Android+Appium自动化测试环境搭建及实操_appium实现android自动化

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

+ [3.4 使用Inspector调试,步骤](#34_Inspector_218)

1、Appium简介

1.1 Appium概念

Appium是一个开源的移动端自动化测试工具,适用于移动端原生APP、移动Web APP或混合APP的自动化测试;
 Appium继承了Selenium(Web端自动化测试工具),应用WebDriver(JSON wire protocol)技术,借助操作系统自带的测试框架来驱动Android和IOS应用。

  • 特点:Appium是一个开源、跨平台、多语言支持、接口统一,适用于原生app、Web app或混合移动app的自动化测试工具;
  • 理念:旨在满足移动端自动化测试需求;
  • 架构:C/S (C客户端:测试脚本,S服务端:Appium);
  • 多语言支持:语言库包含Java、Ruby、Python、php、JavaScript、C#、RobotFramework;
  • 开源:主要依赖selenium提供的WebDriver技术;
  • 跨平台:支持Linux/IOS mac/Windows平台,适用于Android/IOS应用测试;
术语定义
Appium一般说的是命令行操作的无界面的Web服务器
Appium GUI/Appium Desktop有图形界面:2015年之前命名为Appium Server,之后命名为Appium desktop,包含server和inspector工具
Appium Client客户端程式(测试脚本)

1.2 Appium工作原理

Appium基于web Driver协议,利用Bootstrap.jar,最后调用UIAutomator命令实现APP自动化测试。

工作原理:测试代码发送给appium server,server解析指令后调用平台的SDK(IOS:instruments;Android:uiautomator),通过SDK连接设备,并向设备发送指令和接收设备返回的数据。执行的测试脚本会转成JSON数据,通过http请求发送给Appium server,Appium server将请求转换成command,发送给平台工具SDK(IOS:instruments; Android:uiautomator) ;在设备上查找Appium推送上来的bootstrap.jar(bootstrap.jar是Appium架构放在手机端的一个服务器)来执行这些命令,执行完成后,客户端将结果和log发送回Appium server。

在这里插入图片描述

Bootstrap.jar监听4724端口并接收appium命令,最终通过调用UiAutomator的命令来实现,它是Appium运行在目标测试机器上的一个Uiautomator测试脚本。

2、Appium Server环境搭建

安装工具列表:
① Java JDK
② Android SDK  安装完成连接手机就可以查看当前页面布局
③ Appium     安装后,不仅可以访问布局,也可以操作

在这里插入图片描述

2.1 Java JDK

2.1.1 下载JDK

(推荐最稳定的JDK版本1.8.x) 官网下载网址

在这里插入图片描述

2.1.2 运行exe安装JDK,设置安装路径

注意:红色标记的是JDK安装路径,后面配置环境变量时需要用到。
在这里插入图片描述

2.1.3 设置环境变量

在这里插入图片描述在这里插入图片描述

2.1.4 验证安装结果

在这里插入图片描述

2.2 Android SDK

2.2.1 下载安装Android SDK安装包

(本文使用installer_r24.4.1-windows.exe)官方下载网址

在这里插入图片描述

在这里插入图片描述

检查JDK路径是否正确
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.2.2 下载platform-tools,拷贝到SDK安装目录(或者在SDK中在线更新)
本文使用platform-tools_r31.0.3-windows.zip, 安装目录:(\Android\android-sdk\platform-tools\adb.exe)

官方下载网址:https://android-sdk.en.softoic.com/download
在这里插入图片描述

或者直接在SDK中在线更新
在这里插入图片描述

2.2.3 设置环境变量

在这里插入图片描述

在这里插入图片描述

2.2.4 验证安装结果

在这里插入图片描述

2.3 Appium

Appium官网:https://appium.io/

带界面的Appium server安装有两种方式:

(I). appium-desktop(appium server + appium inspector)
 Appium-windows-1.20.2-4.exe  网址:https://github.com/appium/appium-desktop/releases/tag/v1.20.2.4
 appium最新版本已经去掉了inspector,需要另外安装了,非常麻烦。本版本是官网带inspector的版本,非常好用
网址打不开?——>直接下载安装包

(II). 安装appium server和Inspector (官网上面是分开下载的)
 Appium-Server-GUI-windows-1.22.3-4.exe 网址:https://github.com/appium/appium-desktop/releases/tag/v1.22.3-4
 Appium-Inspector-windows-2022.5.4.exe 网址:https://github.com/appium/appium-inspector/releases

无界面的Appium server安装命令:npm install -g appium

下面介绍带界面的appium-desktop下载安装:

2.3.1 安装Appium desktop

开始安装Appium desktop,选择所有用户安装,等待安装完成(直接点Next就可以了)。直接下载安装包

在这里插入图片描述

2.3.2 Appium启动界面

在这里插入图片描述

2.3.2 Appium服务端界面介绍

Appium Setup 界面:
右上角的三个按钮分别是
“start inspector session(启动检查器会话)”
“Get Raw log(查看日志)"
“Stop Server(停止服务)”
下面一块是看日志的
在这里插入图片描述
点击“Start Inspector Session”, Inspector配置界面:
开启Inspector检查器,设置Desired Capabilities参数,连接手机:
Inspector优势:
① 可以校验定位表达式(如:XPATH表达式)
② 通过设置Desired Capabilities来连接手机,比较稳定
③ 可以仿真用户动作(如:点击、返回、滑动等操作)
④ 可以录制一系列操作,然后转换成代码

在这里插入图片描述
点击“Start Session”, Inspector的录制界面:
左侧是App实时界面
中间上侧是录制后生成脚本区,中间下侧是布局
右侧 Selected Element 区域有三个按钮:
Tap:执行选中元素的点击事件
Send Keys:为文本框等对象传值
Clear:如果是文本输入元素(EditText),就清除文本

在这里插入图片描述

3、Appium Server手动调试

如何使用Appium Server连接设备测试APP?需要用到的技术、方法有哪些?调试步骤是什么样的?

在这里插入图片描述

3.1 通过ADB执行调试

3.1.1 ADB简介

Android Debug Bridge我们一般简称为adb,主要存放在sdk安装目录下的platform-tools文件夹中,它是一个非常强大的命令行工具,通过这个工具用来连接计算机和Android设备(手机、计算机、电视、平板、电视盒子等)。

adb.exe运行后会在计算机上创建出来一个服务(ADB服务),手机连上计算机后,都会与服务建立连接,要想发送指令给手机, 需要把指令发送到服务中。

3.1.2 ADB常用指令
  • 关闭和开启服务
     adb kill-server、adb start-server;有时ADB Server会出现异常故障,需要使用上述命令重启ADB Server。
  • 查看设备:
     adb devices
  • 获取信息
     获取手机android版本:adb shell getprop ro.build.version.release
     查看”前台应用”包名:adb shell dumpsys activity | find “mFocusedActivity”
     查找当前界面软件信息:adb shell dumpsys window w | findstr / | findstr name=
    在这里插入图片描述
  • 文件传输
     adb push 电脑上的文件 手机上的位置
     adb pull 手机上的文件 电脑上的位置
  • 软件安装卸载
     adb install 电脑上的apk文件路径 安装应用
     adb uninstall 应用的包名
  • 查找包名及入口启动页面等信息
     aapt dump badging 加apk的路径
  • 清理APP缓存(pm clear + 包名)
     adb pm clear com.android.calculator
  • 打开APP
     adb shell am start –n 包名/Activity –S (-S表示打开之前先kill掉)
  • 获取APP其他信息
     adb shell am start -W 包名/.启动名
  • 列出所有包名
     adb shell pm list packages
     后面跟 -s列出系统apk路径及包名 adb shell pm list packages -s
     后面跟 -3列出用户apk路径及包名 adb shell pm list packages -3
  • adb无线连接
     激活手机Adb的无线服务,输入命令行:adb tcpip 5555(5555是手机默认的端口)
     adb connect :8888 连接时候需要带上端口号
  • PS:也可以用Android-sdk build-tools目录下aapt查找包名及入口启动页面等信息:aapt dump badging 加apk的路径(windows)

3.2 Desired Capability

3.2.1 介绍

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

489)]
[外链图片转存中…(img-a1hK5kav-1715722395489)]
[外链图片转存中…(img-BCDehAQp-1715722395489)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

  • 19
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值