App自动化测试之Appium基础篇:定义、原理、环境搭建

962 篇文章 0 订阅
556 篇文章 1 订阅

2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)-CSDN博客文章浏览阅读2k次,点赞85次,收藏11次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口测试、性能测试、自动化测试、安全测试及一些常问到的人力资源题目。最主要的是他还收集了像阿里、华为这样的大厂面试真题,还有互动交流板块……https://blog.csdn.net/AI_Green/article/details/134931243?spm=1001.2014.3001.55011 关于Android UI自动化测试

  • Android UI自动化测试工具有很多,这些工具基本是基于Android控件层面,涉及Widgets和WebView两类;

  • 而关于其测试方法一般有二:

第一种是:

通过Android提供的各种服务来获取当前窗口的视图信息,如UI Automator。

第二种是:

基于Instrumention,把测试APK和被测APK运行在同一个进程中,通过Java反射机制来获取当前窗口的所有视图,如Robotium

  • 常用的测试工具有:UI Automator、Appium、Espresso、Selendroid、Robotium等;

  • 本文主要介绍的是Appium。

2 Appium简介

  • Appium是开源的、跨平台的测试自动化测试框架;

  • 主要用于测试移动端应用;

  • Appium支持模拟器和真机上的原生应用、混合应用、Web应用;

  • Appium使用WebDriver的JSON wire协议来驱动Apple系统的UI Automator库、Android系统的UI Automator框架;

  • 因Appium集成了Selendroid框架,所以Appium支持比较老版本的Android;

  • Appium支持Selenium WebDriver支持的所有语言(Java、Python、JavaScript、Objective-C、PHP、Ruby、C#、Clojure、Perl等)。

3 Appium原理

3.1 Android端过程

  • 客户端client,指咱们的测试脚本;

  • Appium在服务端启动一个Server(4723端口),用来接口WebDriver client标准的rest请求,调用对应框架响应操作;

  • Appium Server把请求转发给中间件Bootstrap.jar(手机上),Bootstrap.jar监听4724端口并接收Appium命令;

  • Bootstrap将执行结果返回给Appium Server;

  • Appium Server再将结果返回给Appium Client。

3.2 iOS端过程

  • 客户端client,指咱们的测试脚本;

  • Appium在服务端启动一个Server(4723端口),用来接口WebDriver client标准的rest请求,调用对应框架响应操作;

  • Appium Server调用instruments.js,启动socket server,分出子进程instruments.app,将bootstrap.js注入device;

  • bootstrap.js将执行结果返回给Appium Server;

  • Appium Server再将结果返回给Appium Client。

4 补充内容

  • UI Automator测试框架是Android SDK自带的APP UI自动化测试Java库;

  • 而UI Automator对H5支持有限;

  • Appium 引入了chromedriver等来实现基于H5的自动化;

  • Android和iOS启动过程的区别在Appium将请求转发给了Bootstrap.jar或bootstrap.js,再由Bootstrap驱动UI Automator或UI Automation。

5 JDK下载

  • 根据操作系统选择下载,我的是Windows平台;

  • 双击安装文件,按照提示,可以一步步安装,中间会有两次选择安装路径,第一次是安装Jre,第二次是安装Jdk,两次的安装目录,建议单独放在一个磁盘的根目录,如下,笔者的是:jdk-11.0.8;

6 JDK配置

  • 新建系统环境变量JAVA_HOME:

  • 编辑系统变量Path:

Windows10 电脑,新建变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;Windows7 电脑,在变量值最后输入%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;注意用;号分隔
  • 新建系统变量CLASSPATH变量:

变量名:CLASSPATH  变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
  • 验证java环境:

7 SDK下载

  • SDK下载:SDK官网和下载较快的SDK网站;

  • 比如我们选第二个进入下载页面:

  • 选择对应的平台下载即可,我这里是windows平台的;下载后解压到指定目录,比如:

8 SDK配置

  • 将SDK的platform-tools、根目录、tools配置到系统环境变量path中;

D:\android-sdk-windows\platform-toolsD:\android-sdk-windowsD:\android-sdk-windows\tools

9 配置Android环境

  • 新建系统环境变量ANDROID_HOME值为SDK根目录:

ANDROID_HOMED:\android-sdk-windows

  • 新建系统环境变量ANDROID_PATH值为SDK的platform-tools目录:

ANDROID_PATHD:\android-sdk-windows\platform-tools

10 安装NodeJs

  • 安装这个只要是用它来安装appium以及验证后续安装的Appium是否成功;

  • 下载地址:NodeJs:https://nodejs.org/en

  • 下载后直接双击运行即可node-v20.10.0-x64.msi;

  • 安装完在命令行执行npm看到以下界面则表示node安装成功了:

11 解决node安装时提示不是内部命令

  • 需要配置node.js的一些环境变;

  • 在node.js的安装目录下新建两个文件夹如下node_global和node_cache:

  • 打开系统环境变量,新增NODE_PATH变量:

NODE_PATHD:\nodejs\node_modules

  • 在系统环境变量的path新增:%NODE_PATH%:

  • 打开用户环境变量,修改path中的npm路径为:D:\nodejs\node_global:

  • 重启电脑、重启电脑、重启电脑(重要的事情说三遍)。

12 安装配置Appium

  • Appium官网:https://appium.io/docs/en/2.3/

  • 点击左侧的install Appium使用NPM安装:

npm i --location=global appium
  • 命令行输入appium即可:

C:\Windows\System32>appium
[Appium] Welcome to Appium v2.2.3
[Appium] Appium REST http interface listener started on http://0.0.0.0:4723
[Appium] You can provide the following URLs in your client code to connect to this server:
[Appium]        http://172.16.1.33:4723/
[Appium]        http://127.0.0.1:4723/ (only accessible from the same host)
[Appium]        http://172.31.32.1:4723/
[Appium] No drivers have been installed in C:\Users\Administrator\.appium. Use the "appium driver" command to install the one(s) you want to use.
  • 关于安装可参考官网:

  • 还有环境的要求:

  • 还有一种安装方式为使用GUI界面去安装 appium-desktop;

  • 选择的对应包即可:

  • 这里需要注意下,官网给出了明确说明,appium-desktop将不再支持Appium 2.0+版本,建议使用命令行方式。

13 appium环境验证

  • 先安装appium-doctor:

  • npm install -g appium-doctor
  • 命令行输入appium-doctor,检查环境是否ok:

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群: 786229024,里面有各种测试开发资料和技术可以一起交流哦。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】在这里插入图片描述
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值