51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1088|回复: 1
打印 上一主题 下一主题

如何使用Appium搭建自动化测试环境

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-9-16 16:34:41 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 草帽路飞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

  • deviceName : 自动化设备名称   

  • plaformVersion:自动化的平台版本

  • platformName : 自动化的平台的名称

  • appPackage : 测试APP的包名

  • 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 中显示运行的日志




环境搭建完成。









本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情

    2024-5-20 21:29
  • 签到天数: 996 天

    连续签到: 1 天

    [LV.10]测试总司令

    2#
    发表于 2022-9-16 21:54:56 | 只看该作者
    优秀!最喜欢这种搭建环境的内容。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-25 09:30 , Processed in 0.071163 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表