『与善仁』Appium基础 — 1、Android系统的测试环境搭建
1、Android操作系统简介
(1)Android系统诞生
- 2003年,
Andy Rubin等人创建Android公司,并组建Android团队。 - 2005年8月17日,Google低调收购了成立仅22个月的高科技企业Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。
- 2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,然后以Apache免费开源许可证的授权方式,发布了Android的源代码。
- 2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统最早的版本。
- 2009年4月,谷歌正式推出了Android 1.5这款手机。
(2)Android系统的结构
- 应用程序层:提供了一些核心应用程序包,用来存放应用程序,主界面、联系人、电话、浏览器、日历等。
- 应用程序框架层:可以直接使用框架提供的组件来进行快速的应用程序开发,也可以通过继承而实现个性化的拓展。
- 系统库和 Android 运行时环境:系统库是应用程序框架的支撑,是连接应用程序框架层与Linux内核层的重要纽带在程序运行时主要执行核心库和Dalvik虚拟机两部分。
- Linux内核:为Android设备的各种硬件提供了底层的驱动。
我们做测试,关注较多的还是应用程序层。
如下图所示:

(3)Android测试环境搭建整体思路
我们的目标是Android测试,所以环境需要搭建三个环境:Java环境,AndroidSDK环境,Android模拟器。
为什么要安装这三个环境?
- Java环境:Android的应用程序层使用的语言是Java,所以需要使用Java环境。
- AndroidSDK环境:Android SDK给你提供开发、测试所必须的Android API类库。
- Android模拟器:实际上就是一台手机,方便我们给大家展示效果。
补充:
Java是安卓的开发语言。
Android其本质就是在标准的Linux系统上增加了Java虚拟机Dalvik,并在Dalvik虚拟机上搭建了一个Java的
application framework框架,所有的应用程序都是基于Java的application framework框架之上。而application framework框架需要使用Java调用,所以要搭建Android系统手机的测试环境需要Java环境。
2、Java环境安装
(1)JDK8下载
官方下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
国内下载镜像:
(2)安装JDK8
双击运行下载好的JDK软件。
1)安装JDK导向开始,点击下一步。

2)自定义安装路径。

3)开始安装JDK。

4)安装JRE,并选择安装位置。

5)正在安装JRE,等待安装完成即可。

6)JDK和JRE安装完成,点击关闭。

7)验证。
进入命令提示符中输入java -version查看Java环境是否安装成功。

出现了Java的版本信息,就说明安装成功了。
(3)配置Java环境变量
配置Java环境变量的目的,是为了可以在任何目录下执行和使用Java命令和工具。方便在控制台编译和运行Java程序,不必进入到Java的程序目录(安装目录)里面去运行。
比如说,当你需要对Java程序文件进行编译和运行的时候,就可以在任何目录下使用java.exe和javac.exe工具,对该文件进行编译和运行,不必把该程序文件放在java.exe和javac.exe所在的目录下。
1)我的电脑 —> 右键 —> 属性,然后选择高级系统设置 —> 环境变量。
如下图所示:

2)新增JAVA_HOME环境变量。
如下图所示:

点击确定即可。
说明:
JAVA_HOME环境变量的变量值定位当JDK安装目录的根目录即可,也就说bin目录的上一级目录。(规范)- 定义在上半部分的用户环境变量中,只是当前用户生效。配置在下面的系统环境变量中,对该系统中的所有用户都生效。我们自己的电脑,就定义在系统环境变量中即可。
3)把JAVA_HOME环境变量添加到Path环境变量中。
如下图所示:

说明:JDK中就包含了JRE,如果有需要也可以在把JRE的环境单独的加入到
Path环境变量中。
4)验证,进入命令提示符中输入javac查看Java环境变量是否配置成功。
出现了如信息就证明Java环境变量配置成功了。
如下图所示:

3、Android SDK的安装步骤
Android SDK由Google针对其Android平台开发的专属软件开发工具包,可让您创建Android应用程序。
Android SDK是一款适用于移动应用程序开发人员的便捷程序,它包含了Android编程语言开始构建应用程序所需的所有内容,以及一个完整的功能设备模拟器,以便在您完成开发时进行测试。
(1)Android SDK下载
下载地址:http://www.androiddevtools.cn/
进入到下载页面点击Android SDK工具 —> SDK Tools 就会跳转到Android SDK的下载位置,然后我们根据自己的系统,按需下载就可以了。
如下图所示:

(2)Android SDK安装
1)解压Android SDK压缩包
解压android-sdk_r24.4.1-windows.zip文件,当解压后的目录,放到你自己的指定位置。
记住这个目录的位置,并且目录中不要有中文。

Android SDK的目录结构如下:

2)Android API的下载
Android SDK解压好后,我们需要下载Android API。API是一些预先定义的函数,通过调用这些函数,能够让程序得以使用设备自身的硬件或软件。
打开Android-sdk-windows文件夹,双击SDK manager.exe文件,我们需要安装Tools、Platform-tools、Build-tools、API等相关组件。在安装API时,根据要测试的模拟器或真机的Android版本而定,例如使用的真机是Android7.1.1版本,则Android SDK要下载Android7.1.1版本的API才可以。

需要根据Android7.1.1对应的API等级下载对应Android SDK Build-tools版本。

最后我们点击右下角的Install 1 package...或者Delete packages...对相关组件的安装或者卸载。
我们点击Install 1 package...安装所选组件。

勾选Accept License然后点击Install进行安装。

一个版本的Android API大概需要20个G左右的空间,需要耐心等待。
说明:
SDK Manager就是一个Android软件开发工具包管理器,就像一个桥梁,连通本地和服务器,从服务器下载安卓开发所需工具到本地。SDK Platform下个最新的就可以了,它可以向下兼容。Android Support Respository安卓兼容库,必须安装。
下面的SDK Manager说明图,总结的很好。

3)配置国内镜像下载Android API
因国外资源有时候下载较慢,这时候可以配置国内镜像资源。
在弹出的Android SDK Manager窗口中,点击Tools ,下拉框点击Options...

镜像地址列表可以自己网上查找最新的。
(3)配置Android SDK环境变量
在命令提示符中输入adb命令会出现:“adb不是内部或外部命令”。

解决的办法有两种:
- 配置
Android SDK的环境变量。 - 直接进入
Android SDK所在目录中的platform-tools目录中执行命令。
配置Android SDK环境变量,首先确保Android SDK相关组件都已下载完毕。然后同Java的环境变量配置大体相同。
1)进入到系统的环境变量配置界面。
我的电脑 —> 右键 —> 属性,然后选择高级系统设置 —> 环境变量。
2)在系统变量中新建ANDROID_HOME环境变量。

3)将Android SDK中platform-tools和tools的目录路径,添加到系统环境变量Path中。


4)验证Android-SDK环境变量是否配置成功
重新开启一个命令提示符,输入adb命令,如下显示证明Android-sdk环境变量配置成功。

4、SDK manager.exe 闪退打不开解决方案
(1)问题原因:
SDK Manager.exe通过调用android-sdk-windows\tools\lib\find_java.bat确认java.exe的路径。启用cmd.exe命令行切换路径到android-sdk-windows\tools\lib,执行find_java.bat工具,看到输出:C:\Windows\system32\java.exe。
虽然该路径下存在java.exe,但是这并不是JRE的安装路径。估计是由于某些需要Java的软件在安装时,将 java.exe、javaw.exe、javaws.exe 复制到了 C:\windows\system32 下,导致 SDK Manager.exe 调用了错误位置的 java.exe 所致。
(2)解决方法:
- 方法1:删掉
C:\Windows\system32\下的java.exe、javaw.exe、javaws.exe即可解决。 - 方法2:
编辑打开android-sdk-windows\tools下的Android.bat文件。
找到35行开始rem Check we have a valid Java.exe in the path.
set java_exe=
call lib\find_java.bat
if not defined java_exe goto :EOF
修改
set java_exe=到你本地的Java安装目录中的java.exe工具
将call lib\find_java.bat这行,改成rem call lib\find_java.bat。rem Check we have a valid Java.exe in the path.
set java_exe=F:\DevInstall\envs\java\jdk1.8.0_144\jdk\bin\java.exe
rem call lib\find_java.bat
if not defined java_exe goto :EOF
保存关闭
Android.bat文件,重新打开Android SDK Manager即可。
『与善仁』Appium基础 — 1、Android系统的测试环境搭建的更多相关文章
- 『与善仁』Appium基础 — 14、Appium测试环境搭建
目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...
- 『与善仁』Appium基础 — 8、Appium自动化测试框架介绍
目录 1.主流的移动端自动化测试框架 (1)Robotium (2)Macaca (3)Appium 2.自动化测试工具的选择 3.Appium简介 提示:我们前面说的Android环境搭建和adb命 ...
- 『与善仁』Appium基础 — 10、Appium基本原理
目录 1.Appium自动化测试架构 2.Appium架构图 3.Session说明 4.Desired Capabilities说明 5.Appium Server说明 6.Appium Clien ...
- 『与善仁』Appium基础 — 15、使用Appium的第一个Demo
我们使用Python语言作为测试脚本的编写语言. 执行脚本前提: Android模拟器或者手机是开机状态. 使用确保电脑和Android设备进行了链接. 也就是使用ADB命令adb connect链接 ...
- 『与善仁』Appium基础 — 16、APPium基础操作API
目录 1.前置代码 2.安装和卸载APP 3.判断APP是否已安装 4.关闭APP软件和关闭驱动对象 5.发送文件到手机和获取手机中的文件 6.获取当前屏幕内元素结构(重点) 7.脚本内启动其他APP ...
- 『与善仁』Appium基础 — 17、元素定位工具(一)
目录 1.uiautomatorviewer介绍 2.uiautomatorviewer工具打开方式 3.uiautomatorviewer布局介绍 4.uiautomatorviewer工具的使用 ...
- 『与善仁』Appium基础 — 19、元素定位工具(三)
目录 1.Chrome Inspect介绍 2.Chrome Inspect打开方式 3.Chrome Inspect工具的使用 (1)Chrome Inspect工作前提 (2)Chrome Ins ...
- 『与善仁』Appium基础 — 20、Appium元素定位
目录 1.by_id定位 2.by_name定位 3.by_class_name定位 4.by_xpath定位 5.by_accessibility_id定位 6.by_android_uiautom ...
- 『与善仁』Appium基础 — 21、元素的基本操作
目录 1.元素的基本操作说明 (1)点击操作 (2)清空操作 (3)输入操作 2.综合练习 1.元素的基本操作说明 (1)点击操作 点击操作:click()方法.(同Selenium中使用方式一致) ...
- 『与善仁』Appium基础 — 22、获取元素信息的操作(一)
目录 1.获取元素文本内容 (1)text()方法 (2)get_attribute()方法 (3)综合练习 2.获取元素在屏幕上的坐标 1.获取元素文本内容 (1)text()方法 业务场景: 进入 ...
随机推荐
- 学习Git的一些总结
Git是以后公司工作必不可少的,所以早点了解使用它是很有必要的 一般国外的开源是GitHub 国内的是码云Gitee 至于git的安装教程,这里就不啰嗦啦,面向百度即可,安装完成鼠标右键会多几个选项: ...
- scrapy使用response.body时编码问题
scrapy使用response.body时编码问题 摘要:scrapy使用response.body时编码问题.如果在使用responses.body获取数据时,需要将其编码转换成unicode,即 ...
- NVIDIA® TensorRT™ supports different data formats
NVIDIA TensorRT supports different data formats NVIDIATensorRT公司 支持不同的数据格式.需要考虑两个方面:数据类型和布局. ...
- Python“九九乘法表”
用Python语言编程,使用双重循环语句输出"九九乘法表". for i in range(1, 10): # 控制行 for j in range(1, i+1): # 控制列 ...
- Activiti Exploer工作流控制台使用指南!使用Activiti Explorer定义部署执行工作流
Activiti Explorer简介 Activiti Explorer: Activiti控制台,是一个web应用程序 从Activiti的官方网站下载Activiti的压缩zip文件时,Acti ...
- Java如何使用while和for嵌套循环控制输出数据,使数据奇偶行不同
/* 题目1 使用Eclipse编写控制台应用程, 使用while循环在控制台打印10行10列的如下图形 □ □ □ □ □ □ □ □ □ □ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ □ □ □ □ ...
- 【SQLite】教程05-SQLite创建数据库、附加、分离数据库
创建数据库 .quit命令 退出sqlite 提示符 .quit .dump 命令 使用 SQLite .dump 点命令来导出完整的数据库在一个文本文件中,如下所示: sqlite3 Test.db ...
- Zookeeper 分布式锁 (图解+秒懂+史上最全)
文章很长,而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三 ...
- 代码生成器:IDEA 强大的 Live Templates
前言 Java 开发过程经常需要编写有固定格式的代码,例如说声明一个私有变量,logger或者bean等等.对于这种小范围的代码生成,我们可以利用 IDEA 提供的 Live Templates功能. ...
- bzoj2839 集合计数(容斥+组合)
集合计数 内存限制:128 MiB 时间限制:1000 ms 标准输入输出 题目描述 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 ...