本帖最后由 草帽路飞UU 于 2022-9-16 17:04 编辑
Appium 介绍
1.Appium是一个开源工具,用于自动化IOS手机、Android手机和Windows 桌面平台上的原生、移动 Web 和混合应用。
2.Appium 是跨平台的它允许你用同样的 API 对多平台(iOS、Android、Windows)写测试。做到在 iOS、Android 和 Windows 测试套件之间复用代码。
Appium 的概念
1.Appium的核心是一个公开REST API的Web服务器。它接受来自客户端的连接,监听命令并在移动设备上执行,答复 HTTP 响应来描述执行结果。
2.Session(会话),自动化始终在一个会话的上下文中执行,这些客户端程序库以各自的方式发起与服务器的会话,但最终都会发给服务器一个 POST /session 请求,请求中包含一个被称作「Desired Capabilities」的 JSON 对象。此时,服务器将启动自动化会话并使用用于发送更多命令的会话 ID 进行响应。
3.Desired Capabilities 是一些发送给 Appium 服务器的键值对集合(比如 map 或 hash),用于告诉服务器我们想要启动什么类型的自动化会话。还有各种功能可以在自动化过程中修改服务器的行为。
4.Appium Server,Appium是用Node.js编写的服务器。它可以从源代码构建和安装,也可以直接从NPM安装
5.Appium Clients,有一些客户端程序库(分别在 Java、Ruby、Python、PHP、JavaScript 和 C# 中实现),它们支持 Appium 对 WebDriver 协议的扩展。
6.Appium Desktop是一款适用于Mac,Windows和Linux的应用程序,它以美观而灵活的UI提供了Appium自动化服务器的强大功能。它基本上是Appium服务器的图形界面。您可以设置选项,启动/停止服务器,查看日志等...您也不需要使用Node/ NPM来安装Appium,因为Node运行时与Appium Desktop捆绑在一起
注意:Appium Desktop与Appium不是一回事。Appium Desktop是Appium的图形前端,带有其他工具。而Appium 只是一个 HTTP 服务器。它坐下来等待来自客户端的连接,然后指示 Appium 启动哪种会话,以及启动会 话后执行哪种自动化行为。这意味着您永远不会单独使用 Appium。总是必须将它与某种客户端库一起使用。 环境安装
1.安装JDK
Windows
1.下载并安装jdk1.8
2.新建 JAVA_HOME 环境变量,变量值是自己安装JDK 的路径,如:C:\Program Files\Java\jdk1.8.0_151
3.新建 CLASSPATH 环境变量,值为:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
4.编辑PATH变量 新增路径:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
5.验证环境是否配置成功 ,打开cmd命令行窗口, 在命令行窗口中输入java -version
设置环境变量路径:进入我的电脑 -> 属性 -> 高级系统设置 -> 环境变量,编辑环境变量
2、安装 Android SDK
1.下载adb并安装
2.新建 ANDROID_HOME 环境变量,变量值是安装路径,如:D:\android\sdk
3.编辑PATH变量 新增路径:%ANDROID_HOME%\platform-tools;%ANDROID_ HOME%\tools
4.验证环境是否配置成功,打开cmd命令行窗口, 在命令行窗口中输入adb version
具体查看 Android SDK 安装步骤
3.安装Appium Client
在pycharm中安装Appium Client ,在命令窗口执行:pip install Appium-Python-Client
4.安装Appium
1、下载Appium Desktop,默认安装
下载地址: https:// github.com/appium/appium-desktop/releases
2、安装成功,启动Appium服务器
1.打开Appium Desktop,看到服务器启动窗口。基本选项是启动具有所有默认值的Appium服务器以及修改主机和端口的功能。start 按钮知道正在运行的是哪个版本的Appium服务器。
2.点击Start启动服务器,它将在指定的主机和端口上启动,并打开一个显示服务器日志输出的新窗口, Appium 启动后窗口显示一条欢迎消息,显示正在运行的 Appium 版本以及它正在侦听的端口(默认为4723)
运行测试
使用 Appium 运行测试应用(测试设备:Android )
1、adb检查是否连接设备
首先,必须确保adb连接了一个且只有一个Android模拟器或设备。检查是否连接设备运行:adb devices
2、启动Appium并配置选项
1、Appium启动成功后,Appium右上角有三个选项分别为:Start inspector session 启动检查器会话、 Get Raw Logs 获得原生日志、 Stop Server 停止服务
2、点击Start inspector session启动检查器,选择 Automatic Server(自动化服务),填写 Desired Capabilities
- appActivity : activity程序主入口
以下为选项名称及获取方式:
(1)deviceName: 自动化设备名称 获取方式:通过adb devices获取 127.0.0.1:62001
(2)plaformVersion:要自动化的平台版本 查看系统斑斑
(3)platformName : 要自动化的平台的名称 可填写:Android和IOS
(4)appPackage : 测试APP的包名 ,获取方式 可输入:adb shell pm list packages -3 查看包名,测试包名:com.youdao.calculator
(5)appActivity : activity程序主入口如:com.youdao.calculator.activities.MainActivity
获取方式:输入命令 adb logcat | findstr START 同时点击要启动的app,即可获取到包名和activity
注意:Activity 的名字是指从你的包中所要启动的 Android acticity。他通常需要再前面添加 . (例如 使用 .MainActivity 代替 MainActivity)
3、点击 Start Session 启动会话
显示测试APP的界面,可以定位元素
4、编写测试脚本
应用场景
使用appium 自动化启动模拟器,打开测试APP计算器应用程序
前置步骤
1.打开appium工具
2.打开手机模拟器,使用模拟器需先下载并安装
3.利用python编写测试脚本,运行并查看结果
确保已经安装Appium Client
"""
@Time : 2022/7/22 17:03
@Author:H
@desc : 测试自动启动APP
"""
from appium import webdriver
# import time
desired_caps = { }
desired_caps['deviceName'] = '127.0.0.1:62001' # 测试设备名称
desired_caps['platformName'] = 'Android' # 测试系统
desired_caps['plaformVersion'] = '7.1.2' # 版本号
desired_caps['appPackage'] = 'com.youdao.calculator' # app 包名
desired_caps['appActivity'] = '.activities.MainActivity' # App最先启动的Activity
# 打开APP,返回webdriver对象
# 连接APP server (需要先启动appium server)
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
print("启动成功")
运行测试项目,可以看到已经指定了 Appium 端口并构建了 Desired Capabilities ,且自动打开测试APP
Appium Service 中显示运行的日志
环境搭建完成。
|