linux系统搭建python+appium自动化测试环境
0 前言
安卓ui自动化测试我们一般都是在本机windows平台上运行的,这样的话基本只能支持自己一个人维护和测试,不利于自动化测试工作的开展。
基于以上原因,我们需要搭建一套服务端的环境来进行测试,这里我们采用centos环境。
测试流程:
- 执行测试的python+appium工程使用服务器上的
- appium服务使用服务器上的
- 使用服务器上的adb连接运行设备(模拟器、通过wifi连接的真机或者通过usb连接的真机)
我们本地只需要有一个运行客户端就可以执行自动化测试
当然要维护用例必不可少的就是元素定位,所以如果你是编写用例的工程师,本地还是需要有uiautomatorviewer工具,这里推荐一款带xpath的定位工具,下载地址:
链接:https://pan.baidu.com/s/1ZPAGF0DUt999P_u2LPxHvA
提取码:8li8
1 环境准备
必要环境准备:
- centos7操作系统
- java 9.0.4
- Python 3.6.4
- 安卓sdk
- 安装node
- appium 1.21.0
- 安装git
2 安装centos7
2.1 本地安装vmware workstation
安装包下载地址:https://www.ypojie.com/6066.html
本地址包含安装包和许可证
下载后直接安装即可
2.2 安装centos7
CentOS Linux release 7.9.2009
镜像下载地址:https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/
vmware安装centos请参照教程:https://www.runoob.com/w3cnote/vmware-install-centos7.html
3 安装java 9.0.4
3.1 下载安装包
下载java 9.0.4 安装包 jdk-9.0.4_linux-x64_bin.tar.gz
下载地址:https://www.oracle.com/java/technologies/javase/javase9-archive-downloads.html
3.2 卸载原open jdk
命令行执行命令:
java -version
显示如下:
如果有,就需要执行下方的命令进行删除,如果没有就忽略下方步骤,直接进入下一节
# 提升到root权限,如果是root账号,不需要执行此命令
su root
# 查找相关rpm文件
rpm -qa | grep java
# 执行参数操作,替换为上一步中列出来的对应文件
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64
# 再次执行java -version查看是否卸载完成
java -version
3.3 安装jdk9
3.3.1 上传安装包
将下载的安装包上传到服务器上,路径 /usr/local,如下:
3.3.2 解压tar包
解压tar包,命令如下:
tar -xvf jdk-9.0.4_linux-x64_bin.tar.gz
解压后会在当前目录下生成文件夹 jdk-9.0.4
3.3.3 配置环境变量
执行命令
vim /etc/profile
在文件最后追加以下内容:
export JAVA_HOME=/usr/local/jdk-9.0.4
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JRE_HOME=$JAVA_HOME/jre
执行source命令使环境变量生效
source /etc/profile
3.3.4 验证是否安装成功
执行命令java -version
,如果展示java信息表示安装成功
4 安装python 3.6.4
4.1 安装依赖
后边编译时会用到这些依赖,所以需要先安装,执行命令:
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
4.2 下载安装包
使用wget下载,命令:
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz
4.3 解压安装包
命令:
tar -xvf Python-3.6.4.tgz
4.5 创建python3目录
命令:
mkdir -p /usr/local/python3
4.6 进入解压后的文件夹
命令:
cd Python-3.6.4
4.6 配置
./configure --prefix=/usr/local/python3
4.7 编译
make
4.8 安装
make install
4.9 配置软连接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
4.10 验证安装是否成功
验证python3是否安装成功
python3 --version
pip3 --help
5 安装安卓sdk
5.1 下载安装包
sdk下载地址:https://www.androiddevtools.cn/
platform tools下载地址:
链接:https://pan.baidu.com/s/1Jyvp-02PR2sQCt6gqKjifQ
提取码:s1y3
build tools下载地址:
链接:https://pan.baidu.com/s/1TuZR_Wky_kjqrP8MwCnP_g
提取码:tx1l
5.2 上传安装包到centos
将安装包上传到 /usr/local/ 目录下,如下:
5.3 解压缩
tar -zxvf android-sdk_r24.4.1-linux.tgz
解压后路径 /usr/local/android-sdk-linux
5.3.1 将platform tools上传到/usr/local/android-sdk-linux目录下
5.3.2 将build tools上传到/usr/local/android-sdk-linux目录下
整体路径如下:
5.4 配置环境变量
vim /etc/profile
在文件最后添加如下内容:
export ANDROID_HOME=/usr/local/android-sdk-linux
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
执行source命令使环境变量生效
source /etc/profile
5.5 验证是否安装成功
执行命令
android --no-ui
展示如下:
5.6 验证adb是否可用
执行命令
adb --version
展示如下:
6 安装node
6.1 下载安装包
下载地址https://nodejs.org/download/release/v14.18.2/
6.2 上传安装包
将安装包上传到 /usr/local目录下
6.3 解压安装包
tar -xvf node-v14.18.2-linux-x64.tar.gz
6.4 配置环境变量
vim /etc/profile
文件最后追加如下内容:
export NODE_HOME=/usr/local/node-v14.18.2-linux-x64
export PATH=$PATH:$NODE_HOME/bin
执行source命令使环境变量生效
source /etc/profile
6.5 赋予整个文件夹执行权限
chmod 777 node-v14.18.2-linux-x64
6.6 验证是否安装成功
node -v
展示如下:
npm -v
展示如下:
7 安装appium
7.1 安装appium
安装命令:
npm install -g appium@1.21.0 --unsafe-perm=true --allow-root
7.2 安装appium-doctor
npm install -g appium-doctor --unsafe-perm=true --allow-root
7.3 验证安装是否成功
appium --version
展示如下:
appium-doctor
展示如下:
8 安装git
yum install git -y
9 总结
至此,所有自动化测试需要的基础组件已经安装完成
下一步就是要把我们在本地跑着的项目拿到服务器上来运行即可