一、环境搭建

安装Android 环境变量、SDK、Android API、ADT等。

步骤1  安装SDK:下载地址为https://pan.baidu.com/s/1mi6PT9m。如提示错误:'xcopy' 不是内部或外部命令,也不是可运行的程序,则在环境变量path中加入C:\Windows\System32。

步骤2  安装Android API19等,如图1所示。

步骤3  安装ADT,下载离线安装包https://pan.baidu.com/s/1sl2BZit,在Eclipse中单击“helpšinstall new software”,在弹出框中单击“Add”按钮,单击“Archive”,选择离线安装包,如图2所示。

步骤4  配置环境变量Adb和SDK。

在path中添加如下内容。

ANDROID_HOME

C:\Users\zh\Desktop\software\android-sdk-windows

Path

%ANDROID_HOME%\platform-tools

%ANDROID_HOME%\tools

▲图1

▲图2

步骤5  运行CMD,输入命令Adb devices,如图3所示。

▲图3

步骤6  安装appium_python_client。

可以用命令安装pip install Appium_Python_Client,也可以在https://pypi.python.org/pypi/Appium-Python-Client地址下载安装包,进行安装。

解压缩,运行CMD进入到相应目录,输入命令:python setup.py install

步骤7  安装Appium 环境。

这里依然用早期的老版本(appium1.4.13),进行讲解。

安装包下载地址为https://pan.baidu.com/s/1jIJfruA,安装后检查环境,如图4所示。

▲图4

步骤8  默认安装成功后,打开appium.exe,然后配置Capabilities,如图5所示。

▲图5

步骤9  单击Appium右上角按钮启动服务,如图6所示。

▲图6

启动配置模拟器:

创建模拟器,点击create,配置好信息,选择,点击Start,启动模拟器

▲图7

启动模拟器,如下图8:

▲图8

二、App自动化测试源码

搭建好环境后,开始写脚本并进行AppUI自动化测试。

App自动化测试入门实例

1.功能描述

Android模拟器上的计算器可以说是Android内置的App,实现自动化模拟手工操作,单击1,单击+,单击1,单击=,于是计算器上自动得出结果2。

2.程序清单1:文件名appauto_testcase1.py

#coding=utf-8

from appium import webdriver

import time

desired_caps = {}

desired_caps['platformName'] = 'Android'

dersired_caps['platformVersion'] = '4.4'

desired_caps['deviceName'] = 'emulator-5554'

desired_caps['appPackage'] = 'com.android.calculator2'

desired_caps['appActivity'] = '.Calculator'

driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

time.sleep(5)

driver.find_element_by_name("1").click()

driver.find_element_by_name("+").click()

driver.find_element_by_name("1").click()

driver.find_element_by_name("=").click()

time.sleep(5)

driver.find_element_by_name("清除").click()

time.sleep(5)

driver.quit()

三、运行程序视频

在pycharm中,运行以上程序清单1,源码及运行视频

是不是觉得so easy呢?

Appium移动自动化测试实例-基于python的更多相关文章

  1. Selenium自动化测试实例-基于python

    一.Selenium介绍 Selenium是一个Web开源自动化测试框架,具有页面级操作.模拟用户真实操作.API从系统层面触发事件等特点. 1.版本 Selenium 1.0  Sever/Clie ...

  2. 如何简单实现接口自动化测试(基于 python) 原博主地址https://blog.csdn.net/gitchat/article/details/77849725

    如何简单实现接口自动化测试(基于 python) 2017年09月05日 11:52:25 阅读数:9904 GitChat 作者:饿了么技术社区 原文:如何简单实现接口自动化测试(基于 python ...

  3. 关于《Selenium3自动化测试实战--基于python语言》

    2016年1月,机缘巧合下我出版了<Selenium2自动化测试实战--基于python语言>这本书,当时写书的原因是,大部分讲Selenium的书并不讲编程语言和单元测试框,如果想在项目 ...

  4. selenium2自动化测试实战--基于Python语言

    自动化测试基础 一. 软件测试分类 1.1 根据项目流程阶段划分软件测试 1.1.1 单元测试 单元测试(或模块测试)是对程序中的单个子程序或具有独立功能的代码段进行测试的过程. 1.1.2 集成测试 ...

  5. 《Selenium2自动化测试实战--基于Python语言》 --即将面市

    发展历程: <selenium_webdriver(python)第一版>   将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第 ...

  6. 《Selenium 2自动化测试实战 基于Python语言》中发送最新邮件无内容问题的解决方法

    虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动 ...

  7. 一个完整的Appium手机自动化测试实例

    实现过程: 1.使用环境 appium .安卓SDK .python 本文重点是自动化实例,环境搭建过程省略. 2.找到被测APP的包名和Activity Name 手机连接上电脑后,在DOS环境先使 ...

  8. 《Selenium自动化测试实战:基于Python》Selenium自动化测试框架入门

    第1章  Selenium自动化测试框架入门 1.1  Selenium自动化测试框架概述 说到目前流行的自动化测试工具,相信只要做过软件测试相关工作,就一定听说过Selenium. 图1-1是某企业 ...

  9. 《Selenium自动化测试实战:基于Python》之 Python与Selenium环境的搭建

    第2章  Python与Selenium环境的搭建 购买链接:  京东:https://item.jd.com/13123910.html  当当:http://product.dangdang.co ...

随机推荐

  1. shift+回车,换行。断点。

    在Idea中,shift+回车可以在一行的任意一地方换行. 断点的小知识. debug启动程序后左下角会出现断点的功能选项. 一个竖列 一个横行,没有请求时是灰的. 这里主要讲竖列. 这个是沉默全部断 ...

  2. tensorflow从训练自定义CNN网络模型到Android端部署tflite

    网上有很多关于tensorflow lite在安卓端部署的教程,但是大多只讲如何把训练好的模型部署到安卓端,不讲如何训练,而实际上在部署的时候,需要知道训练模型时预处理的细节,这就导致了自己训练的模型 ...

  3. python字典常用方法

    字典(Dictionary) 字典是一个无序.可变和有索引的集合.在 Python 中,字典用花括号编写,拥有键和值. 实例 创建并打印字典: thisdict = { "brand&quo ...

  4. 学习数论 HDU 4709

    经过杭师大校赛的打击,明白了数学知识的重要性 开始学习数论,开始找题练手 Herding HDU - 4709 Little John is herding his father's cattles. ...

  5. tmp == emg.经典+47

    zw.Y3s3{ttqtf**9q+{xx//up qm+Y3#9t%sfsfqtf+&* hh-Y@15zq&zf51"qt3+x>y ====== 城隍庙 经典景点 ...

  6. [原]调试实战——使用windbg调试崩溃在ComFriendlyWaitMtaThreadProc

    原调试debugwindbgcrash崩溃COM 前言 这是几年前在项目中遇到的一个崩溃问题,崩溃在了ComFriendlyWaitMtaThreadProc()里,没有源码.耗费了我很大精力,最终通 ...

  7. JdbcRDD连接MySQL

    (1)添加依赖 <dependencies> <dependency> <groupId>org.apache.spark</groupId> < ...

  8. RDD(二)——创建

    RDD的创建 1)从内存中创建 从集合中创建RDD,Spark主要提供了两种函数:parallelize和makeRDD val raw: RDD[Int] = sc.parallelize(1 to ...

  9. tensorflow(三)

    1.placeholder 一个数据占位符,用于在构建一个算法时留出一个位置,然后在run时填入数据. x = tf.placeholder(tf.float32) y = tf.placeholde ...

  10. mpu6050的驱动的加载和测试步骤

    mpu6050的使用方法: 1.接线方式: VCC,GND,SCL,SDA,正常接法,VCC接3.3v,主要说一下AD0引脚,用来表示地址 接低电平设备地址为0x68,接高电平表示0x69 2.设备接 ...