在这里,我还给大家推荐一套app自动化测试的视频,比文字内容更容易理解!

python+Appium自动化测试框架【项目实战合集】,轻松掌握app高级自动化测试_哔哩哔哩_bilibilipython+Appium自动化测试框架【项目实战合集】,轻松掌握app高级自动化测试共计12条视频,包括:1、App环境搭建、2、App自动化测试原理、3、App自动化之Desired Capabilites-Appium自动化配置项等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV1uY411W7WL/” />

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

(1) JDK的下载

下载地址:
https://www.oracle.com/java/technologies/javase-downloads.html

下载版本选择主流的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的版本信息则说明安装配置成功!)

如果基础太弱请点击:
https://blog.csdn.net/pengjiangchun/article/details/105419683 里面有很详细的步骤和截图!

2、安装SDK并配置SDK的环境变量。

(1) SDK的下载

下载地址:
http://tools.android-studio.org/index.php/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) 夜神模拟器的下载

下载地址:https://www.yeshen.com/

版本选择:最新版

(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。

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

https://github.com/appium/appium-desktop/releases

(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的构成

  • Appium 客户端 — java写的,运行在PC上,开启后就可以提供Appium服务。
  • Appium 服务器 — Appium Server,运行在PC上,监听端口,发送指令到移动设备。
  • 安卓模拟设备(Android SDK)– 运行在设备上,用来执行自动化操作。

Appium工作流程(Android为例)

  • 测试脚本调用Appium Server提供的API,发送请求到Appium Server
  • Appium Server接收到脚本的请求后,发送指令到手机设备
  • 手机设备会安装一个Bootstrap.jar,作为中间件,会开启一个基于Appium服务的Socket,监听4724端口,将Appium Server发送的指令转为UIAutomator指令
  • UIAutomator指令执行操作后,响应原路返回

Appium源码分析(Python为例)

我们打开Appium客户端后,会开启Appium Server服务,默认会去监听4723端口,此时,脚本会通过该端口去和Appium Server通信,这个通信过程本质上是脚本发送 HTTP request请求到Appium Server。由于我们的目的是要通过脚本去操作手机设备,所以需要把设备的一些信息告诉给Appium Server,则需要传入个字典参数,即 desired Capabilities,以下是该参数的可取值表。

当调用quit方法时,会关闭session所关联的窗口。需要获取实战视频可以私信我,发送555既可!