目录

一、Appium环境搭建

1.下载nodejs,并安装

2.下载appium,并安装

3.安装python、安装pip、安装appium

4.安装java的jdk

5.安装andriod的sdk,并添加ANDROID_HOME配置sdk目录

二、用python语言,在eclipse编辑器中编写脚本的环境准备

1.安装python插件

2.选择运行时的python执行文件,以及需要用到python包

三、自动化测试方案(从工程建立,case编写,case组织,报告产出)

1.新建一个工程,新建py文件的自动化脚本文件,或者导入一个已有的工程文件,进行脚本编写。

2.使用appium框架,初始化

3.Case代码(一个模块为例)

4.自动化测试结果报告

5.所有模块的case集成

一、Appium环境搭建

1.      下载nodejs,并安装

Nodejs下载地址:

https://nodejs.org/en/download/

注:下载与当前操作系统匹配的nodejs

2.      下载appium,并安装

方法1:npm install -g appium

方法2:npm -g --registry http://registry.cnpmjs.org install appium

注:方法1提示报错的话,使用方法2,方法2下载资源时有些慢,需要等待,或下一次在运行一次

3.      安装python、安装pip、安装appium

a)         安装Python

python下载地址:

https://www.python.org/downloads/

b)        安装pip

相关地址:https://pip.pypa.io/en/stable/installing/

操作方法:

判断pip安装是否安装成功:

c)         安装appium

pip install appium-python-client

pip install selenium

注:python、pip都需要添加到环境变量中(pip安装完毕后会在python/script路径下)

4.      安装java的jdk

安装完成后通过 java -version查看安装是否成功

5.      安装andriod的sdk,并添加ANDROID_HOME配置sdk目录

Appium环境搭建完毕。

二、用python语言,在eclipse编辑器中编写脚本的环境准备

使用appium可以使用各种语言进行脚本的编写,这里使用的是python,使用的编辑器是eclipse。

在eclipse编辑器中编写python脚本,需要安装python插件:

1.      安装python插件

a)         点击Help→Install New Software

b)        在Work with中输入pydev,点击下图的红框内容

c)         勾选所有项目,点击下一步(由于这里已经安装完毕,所以下一步是置灰的)

d)        弹出下面的提示框,Select All,点击ok

e)         等待安装,在eclipse的底栏显示会显示小的绿色进度,一定要等进度完成后,弹出是否重启eclipse时,再关闭eclipse,否则插件是没有办法安装上的。

2.      选择运行时的python执行文件,以及需要用到python包

点击window的preferences弹出下面的窗口,安装图中的编号进行对应的操作后,会将python的执行文件以及python需要的包加入进来,点击apply后,再点击ok

三、自动化测试方案(从工程建立,case编写,case组织,报告产出)

1.      新建一个工程,新建py文件的自动化脚本文件,或者导入一个已有的工程文件,进行脚本编写。

         新建一个工程:

A.点击File → new →PyDev Project(如果没有PyDev Project ,可以点击other,按照弹出的提示框进行建立即可

B.建立文件夹以及对应python文件,右键点击建立的工程名称,选择你要建立的类型

附(导入后的工程文件):可以按照下图的方式建立需要的文件和文件夹


红色箭头的内容都是case文件(我们是按照模块来建立case文件的)

注:

  1. 如果需要将一个文件夹定义为一个包,则在该文件夹下需要建立空的_init_.py文件,其他的py文件是自己需要的自动化脚本。
  2. _int_.py  :python包必须包含该文件。有它才会是一个包,不然就是一个一个的文件夹,文件夹要变成包,就需要建立一个包
  3. basecase.py:是自己定义的文件,将程序需要使用的初始化信息,公共函数信息都放在该文件中
  4. all_tests.py:是将所有要执行的case添加到该文件中,测试报告结果的代码写到该文件中,直接执行该文件,就可以得到该项目需要自动化的测试结果了
  5. garbage_cleanup_19.py:是助手项目的一个模块的自动化case

2.      使用appium框架,初始化

把下面这段代码放到一个py文件中,在自动化case脚本中引用该文件,这样更换设备时方便修改,当前的这个工程写入到basecase.py文件中了

注:初始化信息还有其他的参数,例如:unicodeKeyboard、resetKeyboard等等,大家需要什么参数都在这里做好定义即可

3.      Case代码(一个模块为例)

test_19_1就是具体的操作步骤,以及要检查的结果,即具体的case脚本

4.      自动化测试结果报告

A.     将文件存放在python的lib目录下

http://file.mt.sogou.com/g2/M00/08/AB/CoZa6FbGyhyAfYwuAABfsU3Pcek5228.py?n=HTMLTestRunner.py

B.     将下面的代码放到all_tests.py文件的末尾,或者放在某一个模块的case末尾的位置

注:

Case执行完毕后,会出现下面的文件,右键点击文件,以Web Browser打开该文件,可以看到测试结果。

执行case完毕后:

测试结果:

5.      所有模块的case集成

android自动化(appium)的更多相关文章

  1. Android自动化测试之Monkeyrunner学习笔记(一)

    Android自动化测试之Monkeyrunner学习笔记(一) 因项目需要,开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括Monkey.Monkeyr ...

  2. android自动化环境搭建

    android自动化环境安装指南 1.appium相关安装(eclipse下)见http://www.cnblogs.com/wangcp-2014/p/5717589.html参考selenium的 ...

  3. Android自动化框架介绍

    随着Android应用得越来越广,越来越多的公司推出了自己移动应用测试平台.例如,百度的MTC.东软易测云.Testin云测试平台…….由于自己所在项目组就是做终端测试工具的,故抽空了解了下几种常见的 ...

  4. Android自动化框架 模拟操作 模拟测试

    转自:http://bbs2.c114.net/home.php?mod=space&uid=1025779&do=blog&id=5322 几种常见的Android自动化测试 ...

  5. Android自动化框架

    Android自动化框架 已有 2085 次阅读2014-8-26 12:19 | Android 几种常见的Android自动化测试框架及其应用 随着Android应用得越来越广,越来越多的公司推出 ...

  6. 使用Monkeyrunner进行Android自动化的总结

    http://www.2cto.com/kf/201411/356056.html 使用Monkeyrunner进行Android自动化的总结 使用Android自动化的方式,不仅可以用来对Andro ...

  7. 从零开始做一个Android自动化

    移动端自动化简单说就是,写好操作app的程序,运行起来,自动执行程序和测试用例,输出执行结果,结果正确,测试通过. 自动化可以方便地完成安装/卸载.启动/运行.UI适配等环节,节省时间: 同一测试脚本 ...

  8. 《Android自动化环境搭建》

    一.安装JDK并配置环境变量 1:在Java官网上下载本机系统相对应的jdk文件安装,直接下一步一步到位 2:配置JAVA_HOME 新建 JAVA_HOME 环境变量,变量值是所安装JDK 的路径, ...

  9. Android自动化学习笔记:编写MonkeyRunner脚本的几种方式

    ---------------------------------------------------------------------------------------------------- ...

  10. Android自动化学习笔记之MonkeyRunner:官方介绍和简单实例

    ---------------------------------------------------------------------------------------------------- ...

随机推荐

  1. hdu 4497 GCD and LCM(2013 ACM-ICPC吉林通化全国邀请赛——题目重现)

    质分解 + 简单计数.当时去比赛的时候太年轻了...这道题都没敢想.现在回过头来做了一下,发现挺简单的,当时没做这道题真是挺遗憾的.这道题就是把lcm  / gcd 质分解,统计每个质因子的个数,然后 ...

  2. Sonar入门学习

    最近在学习Sonar,配置了好几天,才搭建起来环境,为自己的学习能力感到汗颜,赶紧在此记录一下,所谓好记性不如烂笔头. 1.Sonar介绍 Sonar是一个用于代码质量管理的开源平台,用于管理Java ...

  3. Codeforces Round #242 (Div. 2) <A-D>

    CF424 A. Squats 题目意思: 有n(n为偶数)个x和X,求最少的变换次数,使得X的个数为n/2,输出变换后的序列. 解题思路: 统计X的个数ans,和n/2比較,少了的话,须要把n/2- ...

  4. 发送请求工具—Advanced REST Client

    Advanced REST Client是Chrome浏览器下的一个插件,通过它能够发送http.https.WebSocket请求.在Chrome商店下搜索Advanced REST Client, ...

  5. LCM Cardinality

    http://acm.hust.edu.cn/vjudge/contest/view.action?cid=31675#problem/E 暴力 // File Name: uva10892.cpp ...

  6. POJ 2115 模线性方程 ax=b(mod n)

    /* (x*c+a)%(2^k)==b →(x*c)%(2^k)==b-a 满足定理: 推论1:方程ax=b(mod n)对于未知量x有解,当且仅当gcd(a,n) | b. 推论2:方程ax=b(m ...

  7. C++ 变量的声明与定义的区别

    变量声明和定义的区别 我们在程序设计中,时时刻刻都用到变量的定义和变量的声明,可有些时候我们对这个概念不是很清楚,知道它是怎么用,但却不知是怎么一会事,下面我就简单的把他们的区别介绍如下:(望我的指点 ...

  8. IDEA 15 社区版 Maven项目 启动Tomcat调试

    1.在pom下添加Tomcat插件: <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifac ...

  9. Java format 简单应用

    一.前言 String.format 作为文本处理工具,为我们提供强大而丰富的字符串格式化功能,为了不止步于简单调用 String.format("Hello %s", " ...

  10. 利用python进行数据分析之绘图和可视化

    matplotlib API入门 使用matplotlib的办法最常用的方式是pylab的ipython,pylab模式还会向ipython引入一大堆模块和函数提供一种更接近与matlab的界面,ma ...