全网最全appium工作原理以及appium自动化测试环境搭建教程

一、前言

对于appium自动化测试环境的搭建我相信90%的自学者都是在痛苦中挣扎,在挣扎中放弃,在放弃后又重新开始,只有10%的人,人品比较好,能够很快并顺利的搭建成功。appium 自动化测试是很早之前做的,一直想留下点什么,可是一直抽不出一块完整的时间来做这件事儿。现在终于有了。

反观各种互联网的招聘,移动测试已经成了主流,如果再不去学习移动自动化测试技术将已经追不上时代的赶脚!好了,废话不多说,进入正题!

二、Appium简介

 

appium是移动端最主流的开源自动化测试框架。开源,免费

跨平台:完全满足IOS和Android两个不同的系统以及H5的自动化测试。

Appium是基于Selenium来实现的

Appium是基于JDK+SDK环境来运行的。

Appium有Server版和Desktop版两种,2020年前者已经淘汰了。

三、搭建Appium+Python自动化测试环境

1、安装JDK并配置JDK的环境变量。

(1) JDK的下载

下载地址:Java Downloads | Oracle

下载版本选择主流的jdk1.8的版本:jdk-8u241-windows-x64.exe

(2) 配置JDK的环境变量:

我的电脑右键属性-->高级系统设置-->高级-->环境变量-->系统变量:

1、新建系统变量:

      变量名:JAVA_HOME

      变量值:C:\Program Files\Java\jdk1.8.0_211 (这里是jdk的实际安装路径)

2、新建系统变量:

      变量名:CLASSPATH

      变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar; (前面有一点和冒号不能少)

3、编辑PATH变量,在PATH的最后面添加:

      %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;(PATH中原来的路径不要去掉哦)

4、验证是否安装并配置成功:

      在dos中输入javac和java -version验证。(分别出现一堆英文和jdk的版本信息则说明安装配置成功!)

      如果基础太弱请点击:windows下安装jmeter? mac下安装jmeter? So Easy那多不是事!写给jmeter入门的朋友!_普通网友的博客-CSDN博客   里面有很详细的步骤和截图!

2、安装SDK并配置SDK的环境变量。
(1) SDK的下载

下载地址:Android SDK 百度网盘下载地址链接

下载版本选择:android-sdk_r24.4.1-windows.zip

(2) SDK的安装

进入D:\android-sdk-windows目录,双击SDK Manager.exe下载对应的包:

a.以下三个Android工具包必须安装:只需要下载最新的版本就行了。

b.Extras(附加设备)

c.安卓版本:安装和模拟器安卓版本一致的SDK。现在android 5开发的场景多一些

 

夜神模拟器查看Android版本:设置左边的三横->关于我们->Android版本

(3) 配置SDK的环境变量

我的电脑右键属性-->高级系统设置-->高级-->环境变量-->系统变量:

1、新建:

      变量名:ANDROID_HOME

      变量值:D:\android-sdk-windows (SDK的实际安装路径)

2、编辑PATH,在最后面添加:

      %ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;%ANDROID_HOME%\build-tools\29.0.3;

      (如果原来PATH路径最后不是;则加一个;再添加上面的内容)

3、验证是否安装并配置成功:

      在dos中输入adb验证。在最上面出现Android Debug Bridge version版本信息,如下图表示成功!

3、安装夜神模拟器并在模拟器上安装被测app

(1) 夜神模拟器的下载

下载地址:夜神安卓模拟器-安卓模拟器电脑版下载_安卓手游模拟器_手机模拟器_官网

版本选择:最新版

(2) 夜神模拟器的安装

下一步下一步傻瓜式安装。

(3) 被测app的安装

把apk包直接拖拽到夜神模拟中安装

(4) 设置模拟器/真机的环境

1.启用设备的开发者选项,启动调试功能。

夜神模拟器:设置->多次点击版本号直到出现提示【开发者选项】->返回上一步能看到【开发者选项】->USB调试。

2.输入命令前:因为SDK下的adb[在SDK安装目录的platform-tools目录下]和模拟器的nox_adb[在夜神安装目录的bin目录下]版本不一致,所以需要把SDK路径下的abd.exe复制到模拟器的bin路径下,重命名为nox_adb.exe,原来的nox_adb.exe先备份。

4.安装和配置Appium

(1) 下载和安装appium-desktop。

下载地址:(强烈建议使用迅雷下载)

Releases · appium/appium-desktop · GitHub

(2) 打开appium输入:127.0.0.1和4723登录,如下图:

 

如果此端口被占用:可以使用此命令检查端口是否被占用:netstat -ano | findstr 4723

(3) 配置Appium检查器:

A.Appium右上角有三个选项分别为:

      start inspector session 开始检查回话(点击它)

      Get Raw Logs 获得原生日志

      Stop Server 停止服务

B.点击Automatic Server(自动化服务)

      在Desired Capabilities选项中输入如下内容,如图:

deviceName:设备名称

            获取方式:通过adb devices获取。输入adb devices后出现

            值为:127.0.0.1:62001

      platformName:操作系统名称

            可填写:Android和IOS

            值为:Android

       platformVersion:操作系统版本

            查看天天模拟器的anroid版本获取得到。

            夜神模拟器查看Android版本:设置左边的三横->关于我们->Android版本

      appPackage:包名

            通过aapt.exe获取:aapt dump badging apk包的路径。

            值为:找到package后面的值,一般在第一行。如:tv.danmaku.bili

      appActivity:activity程序主入口

            通过aapt.exe获取:aapt dump badging apk包的路径,

            找到launchable-activity后面的值,如:tv.danmaku.bili.ui.splash.SplashActivity

            第一种可以取全部的值,第二种也可以只取包名以后的内容:

            第一种值为:tv.danmaku.bili.ui.splash.SplashActivity

            第二种值为:.ui.splash.SplashActivity (注意:前面有个点不能省略)

保存后点击"Start Session"如出现:unkown... 错误,是因为模拟器中没有安装apk包。

如果正常在模拟器里启动app则表示appium自动化测试环境搭建成功!

四、Appium运行原理

 

(1)自动化脚本向AppiumServer发送注册参数(URL,platformName, platformVersion,deviceName,appPackage,appActivity)

(2)AppiumServer将bootstrap.jar包放入手机端中

(3)手机端用bootstrap启动手机端口(4724),并将端口返回给AppiumServer(相当于建立好了通信连接)

(4)自动化脚本发送请求(操作或命令或动作)给AppiumServer

(5)AppiumServer将 请求解析并发送给bootstrap

(6)bootstrap将请求解析发给UIAutomator

(7)UIAutomator执行相应的操作并将结果返回给bootstrap

(8)bootstrap将响应结果返回给AppiumServer

(9)AppiumServer将响应结果返回到脚本

综上所述,个人认为AppiumServer像是一个请求者;bootstrap充当桥梁的角色,负责PC与电脑之间的通信;UIAutomator则是真正的执行者。

五、总结

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

 

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取  

  • 8
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Appium是一款用于移动应用自动化测试的开源工具,支持多种移动操作系统,包括Android和iOS。以下是一个Appium自动化测试教程大纲: 1. 安装Appium:首先,你需要安装Appium,并确保你的操作系统和所使用的软件版本与教程中的相匹配。例如,在Windows 10上安装Appium,并使用Python语言进行教程讲解。 2. 准备测试环境:在开始自动化测试之前,你需要准备一个用于测试的移动应用程序。你可以在一个新建的文件夹中复制要测试的apk文件。请确保该apk文件的testonly属性设置为false,以允许测试。 3. 配置Appium:在开始测试之前,你需要配置Appium以连接到你的设备或模拟器。这包括指定设备的UDID、选择所需的平台和版本、设置Appium服务器的端口等。 4. 编写测试脚本:使用Python语言编写测试脚本,以控制Appium执行测试操作。你可以使用Appium提供的API来定位和操作移动应用程序的元素,执行各种测试操作,如点击、输入文本、滑动等。 5. 运行测试:运行你编写的测试脚本,并观察测试过程中的输出和结果。通过检查测试结果,你可以确定应用程序在不同情况下的行为是否符合预期。 请注意,以上只是一个简要的教程大纲,实际的教程可能会更加详细和复杂,涉及到更多的测试场景和技术细节。建议根据你的具体需求和使用的技术栈进一步深入学习和实践Appium自动化测试123 #### 引用[.reference_title] - *1* [APPIUM实现APP自动化的基本使用教程](https://blog.csdn.net/akongc/article/details/118998997)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] - *2* [教你用Appium搭建Android自动化测试框架(详细教程)](https://blog.csdn.net/m0_60166861/article/details/131024447)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] - *3* [自动化测试之路 —— Appium使用教程](https://blog.csdn.net/weixin_38306507/article/details/126464298)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值