软件测试所有内容笔记正在陆续更新中,笔记已经在本地记录,全部为自己手动记录的笔记及总结,正在开始更新中,后续会逐步更新并完善到
软件测试学习内容总结
专栏。
本节内容:移动端app自动化测试
文章目录
1. appium环境安装与架构介绍
1.1 目前mobile自动化解决方案
![](https://img-blog.csdnimg.cn/18dfb69de61b48acaf25f0c040537e1c.png)
自动化工具选择
![](https://img-blog.csdnimg.cn/555895b6460c40edb14189e19f058fcd.png)
- 单平台测试 or 多平台测试?
- 是否有多设备同时测试的场景?
- 不局限于测试环境,任何版本任何环境都可以测试?
- 最擅长哪种开发语言?
- 当前市面是否有满足项目需求的测试工具?是否需要二次开发?
1.2 appium 介绍
Appium是一个移动端的自动化测试框架
,可用于测试原生应用,移动网页应用和混合应用
,且是跨平台。可用于iOS和Android操作系统。原生应用是指用Android或iOS编写的应用,移动网页应用是指网页应用,类似于iOS中Safari应用或者Chrome应用或者类似浏览器的应用。混合应用是指一种包裹webview的应用,原生应用网页内容交互性的应用。
重要的是Appium是跨平台的。何为跨平台,意思是可以针对不同平台用一套api来表写脚本。
原生应用 – 手机设置,
移动网页应用 – 手机浏览器打开的应用,
混合应用 – 原生应用嵌套了网页应用,微信小程序
推荐Appium
- 跨语言:Java、Python、nodejs等
- 跨平台
- Android、iOS
- Windows、Mac
- 底层多引擎可切换
- 生态丰富、社区强大
Appium工作引擎
对于Android、iOS底层使用了不同的工作引擎驱动实现自动化测试。Appium引擎列表:
Appium的设计理念
- webdriver是基于http协议的,第一连接会建立一个session会话,并通过post发送一个json告知服务端相关测试信息
- Client/Server设计模式
- 客户端通过WebDriver json wire协议与服务端通讯
- 多语言支持
- Server可以放在任何地方
- 服务端NODEJS开发的HTTP服务
- appium使用appium-xcuitest-driver来测试iPhone设备,其中需要安装Facebook出的WDA(webdriver agent)来驱动iOS测试
入门篇 - appium环境安装
appium生态工具
- adb:Android的控制工具,用于获取Android的各种数据和控制
- Appium Desktop:内嵌了Appium server和inspector的综合工具
- Appium Server:Appium的核心工具,命令行工具
- Appium client:各种语言的客户端封装库,用于连接Appium server
- Python、Java、ruby、robotframework-appium
- AppCrawler:自动化遍历工具 --思寒
Appium安装 - 简化版
环境安装
- Java 1.8版本(配置环境变量)
- Android SDK(配置环境变量)
- Appium Desktop
- Python3
- Appium python client
软件下载地址
- <topic/2270>
- 软件地址:https://pan.baidu.com/s/1VtEXIogo_GS7iGh3f0nklw 提取码:gxow
JDK安装与配置
- 安装JDK(1.8版本)
- 官网:https://www.oracle.com/java/technologies/downloads/
- 社区地址:https://pan.baidu.com/s/1VtEXIogo_GS7iGh3f0nklw 提取码:gxow
- https://download.testing-studio.com/java_jdk/
- 安装(一直点下一步 --> 完成,用默认的路径即可)
- 配置环境变量(Windows) — 系统环境变量
- JAVA_HOME D:\Java\jdk1.8.0_25(注意这里的JAVA_HOME大写 后面会用到)
- classpath .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(最前面加个.;)
- path %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
- 检查JAVA环境是否配置好:命令行输入
java -version
或javac -version
,输出版本号信息即成功。
SDK安装与配置 - 简化版
-
第一种方式:
-
安装sdk
- 其实sdk就是个文件夹,下载之后需要手动更新,配上环境变量就可以使用,不需要安装
- 网盘地址:https://pan.baidu.com/s/1VtEXIogo_GS7iGh3f0nklw 提取码:gxow
-
配置android SDK环境变量:(注意:路径不要有特殊符号,不要有空格,不要有中文,使用正常格式的英文路径即可)
- ANDROID_HOME D:\adt-bundle-mac-x86_64-20140702\sdk
- PATH %ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools
-
检查是否安装成功,cmd输出
- adb回车或者adb shell 然后回车
-
更新sdk
tools\android.bat update sdk --no-ui
SDK安装与配置 - 进阶版
- 第二种方式
https://developer.android.com/studio/index.html
http://tools.android-studio.org/index.php/sdk - 安装SDK
- 下载sdk
- Android studio地址:https://developer.android.com/studio/index.html
- 中文官网地址:https://tools.android-studio.org/index.php/sdk
- SDK环境搭建
- <topic/4001>
- 下载sdk
Appium Desktop 安装与配置
- 安装appium desktop(appium server + appium inspector工具)
- 下载对应操作系统的安装包:https://github.com/appium/appium-desktop/releases
- https://github.com/appium/appium-desktop/releases/tag/v1.19.1
- 网盘地址:https://pan.baidu.com/s/1VtEXIogo_GS7iGh3f0nklw 提取码:gxow
- 目前最新版本是1.21.x,推荐使用目前较稳定的1.19.1版本
- 最好不要使用太旧的版本,以免出现奇怪的环境问题
Appium 客户端安装与配置
- 安装Python3环境
- <topic/57> 安装Python+pycharm环境帖
- 安装Appium python client两种方式:
- 方式一:
pip install appium-python-client
(推荐) - 方式二:下载源码包:
- 地址:https://github.com/appium/python-client
- https://pypi.org/project/Appium-Python-Client
- 解压后在命令行中进入python-client-master目录,该目录下包含setup.py文件
- 执行
python setup.py install
命令安装客户端
- 方式一:
运行测试用例
- 验证环境是否成功
- 1、首先打开appium desktop,点击start server(不报错)
- 2、其次准备一个Android设备,真机或者模拟器(推荐mumu模拟器)
- 3、模拟器连接电脑
- 4、adb devices查看设备是否连接
- 5、最后编写测试脚本,运行脚本,不报错
下载安装模拟器
- mumu模拟器
- 电脑开启VT(虚拟化技术)
- 设置屏幕显示(720*1280)重启
- 连接设备adb connect
代码示例
- 下面代码论坛帖地址:
- <topic/12652>
Appium安装 - 服务版
Appium Server环境信赖
- Java1.8版本
- Android sdk
- Node js(>=10版本),npm(>=6版本)(推荐下载Node.js 12.x)(重点)
- Appium Server
- Python3
- Appium python client
Node.js安装
- Node.js 下载地址:
- https://nodejs.org/en/download/releases/
- 推荐下载Node.js版本12.x(Windows:msi文件,Mac:pkg)
- 安装之后会自带一个工具npm,可以使用这个工具安装Appiu