Appium Python自动化测试之环境搭建的步骤

Appium简介

Appium是一个自动化测试开源工具,支持IOS和Android平台上的移动原生应用、移动Web应用和混合应用。所谓的“移动原生应用”是指那些用IOS或者Android SDK写的应用;所谓的“移动Web应用”是指使用移动浏览器方位的应用(Appium支持IOS上的Safari和Android上的Chrome);所谓的“混合应用”是指原生代码封装网页视图(原生代码和Web内容交互)。更重要的是,Appium是一个跨平台的工具,它允许测试人员使用同样的接口、基于不同的平台(IOS、Android)编写自动化测试脚本,这样大大增加了IOS和Android测试间代码的复用性。

环境部署

本博客以32位的Windows 7操作系统为例介绍Appium+Python的环境搭建步骤

1、安装Node.js

访问 https://nodejs.org/en/download/,下载node.js,根据操作系统下载对应的安装包,这里选择Windows 32位的

下载完成后是一个.msi格式的文件,可以直接点击进行安装,安装过程不过多介绍,一路默认安装即可

安装完成后,会自动将路径加入到环境变量中,在命令行窗口中运行node -v,如果出现版本号,表示安装正常,如下图所示

2、安装jdk

jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

jdk版本已经更新到1.8,下载后按照默认路径安装,安装jdk的同时也会安装jre。安装目录如下图所示

配置环境变量

在环境变量中新建JAVA_HOME,对应的变量值为jdk的目录

再新建一个变量名CLASSPATH的环境变量,变量值为:%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar

找到Path变量,在变量值的末尾增加两个路径:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

配置好以后,新打开一个命令行窗口,在其中输入java -version,会出现jdk的版本号,表示配置正确

3、安装Android SDK

Android SDK是Google提供的Android开发工具包,在开发Android应用的时候会用到,需要通过引入工具包来调用Android的API

下载地址:https://developer.android.com/,考虑到有可能会打不开这个链接,提供一个中文社区的SDK下载链接:http://tools.android-studio.org/index.php/sdk。这里选择installer_r24.4.1-windows.exe进行下载,下载完成安装后目录结构是这样的

双击打开SDK Manage.exe,选择需要安装的API版本和对应的工具包进行安装,这些在运行模拟器和真机测试的时候会使用到

这些工具包都安装完成后,sdk的目录如下图所示

配置环境变量

新建环境变量ANDROID_HOME,变量值为sdk的路径:E:\Android\android-sdk

在Path变量中增加两个路径:E:\Android\android-sdk\platform-tools和E:\Android\android-sdk\tools

配置了环境变量后,在命令行窗口中运行adb -version,出现以下信息

4、安装python

下载地址:https://www.python.org/downloads/,可以选择Python2.7或者Python3.x版本,我这里选择的是Python3.6的版本。下载的是一个exe安装文件,下载完直接安装即可,我的安装目录是C:\Python36,安装好以后将Python安装目录配置到环境变量Path中,然后在cmd中运行python命令

5、安装Appium

AppiumForWindows下载地址:https://bitbucket.org/appium/appium.app/downloads/

下载后,双击压缩包中的appium-installer.exe进行安装,这个的安装时间要长一些。完成后会在桌面生成一个快捷方式的图标,双击运行就可以启动Appium

运行Appium需要依赖.NET Framework 4.5,如果没有安装的话点击运行的时候会报错,所以需要下载.NET Framework4.5,这个自行百度下载就可以。运行Appium后界面如下图所示

全部安装配置好以后,在命令行窗口中运行appium-doctor,出现以下信息,说明所有的都正确安装并配置了

6、下载Appium-Python-Client

下载链接:https://pypi.python.org/pypi/Appium-Python-Client/,下载后解压到Python的安装目录,进入目录下,运行python setup.py install命令

安装完成后会有如下提示

上面已经安装了python,也可以通过python的pip命令直接安装,在命令行中运行pip install Appium-Python-Client

OK,到此为止,所有需要安装的软件和工具包,以及环境变量都配置好了,下面就可以利用这个环境来实现Appium+Python的自动化测试脚本编写了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2019-01-22

Python脚本在Appium库上对移动应用实现自动化测试

采用Appium进行自动化的功能性测试最酷的一点是,你可以使用具有最适合你的测试工具的任何一门语言来写你的测试代码.大家选择最多的一个测试编程语言就是Python. 使用Appium和Python为iOS和Android应用编写测试代码非常容易. 在这篇博文中我们将详细讲解使用Appium下的Python编写的测试的例子代码对一个iOS的样例应用进行测试所涉及的各个步骤,而对Android应用进行测试所需的步骤与此非常类似. 开始,先自https://github.com/appium/appi

详解Appium+Python之生成html测试报告

思考:测试用例执行后,如何生成一个直观漂亮的测试报告呢? 分析: 1.unittest单元测试框架本身带有一个textTestRunner类,可以生成txt文本格式的测试报告,但是页面不够直观 2.我们可以导入第三方库,比如常用的HTMLTestRunner类,可以生成html格式测试报告 3.首先去下载HTMLTestRunner_PY3.py脚本(我这里采用Python3.7),然后放置在Python3.7路径下的Lib目录下,使用时需要导入(即import HTMLTestRunner_P

详解appium+python 启动一个app步骤

询问度娘搭好appium和python环境,开启移动app自动化的探索(基于Android),首先来记录下如何启动待测的app吧! 如何启动APP?1.获取包名:2.获取launcherActivity.获取这两个关键东西的方法很多,推荐使用sdk自带的aapt:aapt即Android Asset Packaging Tool,在SDK的build-tools目录下.该工具可以查看apk包名和launcherActivity,当然还有更多的功能,有兴趣的可以查看相关资料. 一.下载aapt:

详解使用Python写一个向数据库填充数据的小工具(推荐)

一. 背景 公司又要做一个新项目,是一个合作型项目,我们公司出web展示服务,合作伙伴线下提供展示数据. 而且本次项目是数据统计展示为主要功能,并没有研发对应的数据接入接口,所有展示数据源均来自数据库查询, 所以验证数据没有别的入口,只能通过在数据库写入数据来进行验证. 二. 工具 Python+mysql 三.前期准备 前置:当然是要先准备好测试方案和测试用例,在准备好这些后才能目标明确将要开发自动化小工具都要有哪些功能,避免走弯路 3.1 跟开发沟通 1)确认数据库连接方式,库名 : 2)测

详解用python写一个抽奖程序

第一次使用python写程序,确实比C/C++之类方便许多.既然这个抽奖的数据不大,对效率要求并不高,所以采用python写,更加简洁.清晰.方便. 1.用到的模块 生成随机数的模块random 用来读取excel表格的模块xlrd 2.思路:首先打开excel表格,然后读取其中某个单元格或者某行或某列的元素,进行输出或存储. 3.如何保证随机:随机的关键在于取随机数.每抽一个人之前,我们随机生成一个随机数i,i代表了读取第i个人的数据,由于i的生成是完全随机的,所以也就保证了选取的人员是完全随

详解Docker如何启动一个Centos镜像

接着上文,我们下载完成一个Centos镜像之后,开始启动 #运行命令 docker run -d -i -t <imageID> /bin/bash 这样就能启动一个一直停留在后台运行的Centos了.如果少了/bin/bash的话,Docker会生成一个Container但是马上就停止了,不会一致运行即使有了-d参数. 然后我们可以进入我们这个Centos docker attach <ContainerID> 进入Centos后,发现竟然没有ifconfig和ssh,网上例子很

详解用python -m http.server搭一个简易的本地局域网

工作时同事间几mb小文件的传输,一般使用QQ或者微信就足够了,但当传输文件几百MB或者几十G时,这种方法的效率就显得不足了.本篇就是简单说明一个python小功能,让大家能利用python方便的搭建一个本地局域网.跟同事测试时,速度轻松达到800mb/s. 搭建只需三步就可以: 1.设置python路径为环境变量 2.命令行输入python -m http.server 8888来搭建局域网 3.使用本机的ip地址进行访问 接下来我们一步一步看: 设置python路径为环境变量 1.先找到自己p

vue相关配置文件详解及多环境配置详细步骤

1.package.json 作用: package.json 文件其实就是对项目或者模块包的描述,里面包含许多元信息.比如项目名称,项目版本,项目执行入口文件,项目贡献者等等.npm install 命令会根据这个文件下载所有依赖模块. 文件结构如下: { "name": "sop-vue", "version": "0.1.0", "author": "zhangsan <zhangsa

详解基于python的全局与局部序列比对的实现(DNA)

程序能实现什么 a.完成gap值的自定义输入以及两条需比对序列的输入 b.完成得分矩阵的计算及输出 c.输出序列比对结果 d.使用matplotlib对得分矩阵路径的绘制 一.实现步骤 1.用户输入步骤 a.输入自定义的gap值 b.输入需要比对的碱基序列1(A,T,C,G)换行表示输入完成 b.输入需要比对的碱基序列2(A,T,C,G)换行表示输入完成 输入(示例): 2.代码实现步骤 1.获取到用户输入的gap,s以及t 2.调用构建得分矩阵函数,得到得分矩阵以及方向矩阵 3.将得到的得分矩

详解使用python的logging模块在stdout输出的两种方法

详解使用python的logging模块在stdout输出 前言: 使用python的logging模块时,除了想将日志记录在文件中外,还希望在前台执行python脚本时,可以将日志直接输出到标准输出std.out中. 实现 logging模块可以有两种方法实现该功能: 方案一:basicconfig import sys import logging logging.basicConfig(stream=sys.stdout, level=logging.DEBUG) 方案二:handler

基于YUV 数据格式详解及python实现方式

YUV 数据格式概览 YUV 的原理是把亮度与色度分离,使用 Y.U.V 分别表示亮度,以及蓝色通道与亮度的差值和红色通道与亮度的差值.其中 Y 信号分量除了表示亮度 (luma) 信号外,还含有较多的绿色通道量,单纯的 Y 分量可以显示出完整的黑白图像.U.V 分量分别表示蓝 (blue).红 (red) 分量信号,它们只含有色彩 (chrominance/color) 信息,所以 YUV 也称为 YCbCr,C 意思可以理解为 (component 或者 color). 维基百科上的 RGB