一、环境准备

1.脚本语言:Python3.x IDE:安装Pycharm

2.安装Java JDK 、Android SDK

3.adb环境,path添加E:\Software\Android_SDK\platform-tools

4.安装Appium for windows,官网地址 http://appium.io/

点击下载按钮会到GitHub的下载页面,选择对应平台下载

安装完成后,启动Appium,host和port默认的即可,然后设置Android SDk和Java JDK

然后点下边那个保存并重启的按钮,然后点第一个Start Server按钮,将会看到

二、真机测试

1.连接手机

打开开发者模式,USB线连接手机和电脑,并且在开发者选项当中,开启USB调试

测试是否连接成功,可执行命令adb devices

出现上图就证明手机和电脑连接成功。。。

2.点击Start Inspector Session,

按如下配置Desired Capabilities

platformName :声明是ios还是Android系统

platformVersion : Android内核版本号,可通过命令adb shell getprop ro.build.version.release查看

deviceName :连接的设备名称,通过命令adb devices -l中model查看

appPackage :apk的包名

appActivity:apk的launcherActivity,通过命令adb shell dumpsys activity | findstr “mResume”查看(需先打开手机应用)

注意:Android 8.1之前应使用adb shell dumpsys activity | findstr “mFocus”

3.运行Start Session,选择元素

右侧 Selected Element 区域有三个按钮

Tap:执行选中元素的点击事件

Send Keys:为文本框等对象传值

如果是文本输入元素,就清除文本

4.录制脚本

录制生成的python代码如下:

# This sample code uses the Appium python client

# pip install Appium-Python-Client

# Then you can pastethisinto a file and simply run with Pythonfromappium import webdriver

caps={}

caps["platformName"] = "Android"caps["platformVersion"] = "9.0.0"caps["deviceName"] = "Mi_Note_3"caps["appPackage"] = "com.antfortune.wealth"caps["appActivity"] = "com.alipay.mobile.quinox.LauncherActivity"caps["resetKeyboard"] =True

caps["unicodeKeyboard"] =True

driver= webdriver.Remote("http://localhost:4723/wd/hub", caps)

el1= driver.find_element_by_id("com.antfortune.wealth.login:id/login_main_button")

el1.click()

el2= driver.find_element_by_id("com.alipay.mobile.accountauthbiz:id/auth_login_btn")

el2.click()

driver.quit()

5.在pycharm中建立项目将代码粘入,在运行之前,还需通过pip命令安装pip install Appium-Python-Client依赖包

最后,记一个我在这些过程中遇到的问题(现已解决)

在Appium-desktop中运行Start Session时,出现

解决方法:在开发者模式下,打开usb调试功能和use模拟点击,两个都要打开,此时再重新运行,即可解决

appium+python自动化测试教程_Python+Appium实现自动化测试相关推荐

  1. appium python 打开通知栏_python appium操作手机及app各种方法

    #锁定屏幕时间秒 driver.lock(5) #将APP放置后台 参数时间秒 driver.background_app(5) #收起键盘 driver.hide_keyboard() #启动Act ...

  2. 视频教程-快速入门Python基础教程_Python基础知识大全-Python

    快速入门Python基础教程_Python基础知识大全 十余年计算机技术领域从业经验,在中国电信.盛大游戏等多家五百强企业任职技术开发指导顾问,国内IT技术发展奠基人之一. 杨千锋 ¥99.00 立即 ...

  3. 视频教程-快速入门Python基础教程_Python基础进阶视频-Python

    快速入门Python基础教程_Python基础进阶视频 十余年计算机技术领域从业经验,在中国电信.盛大游戏等多家五百强企业任职技术开发指导顾问,国内IT技术发展奠基人之一. 杨千锋 ¥199.00 立 ...

  4. appium python 抓包_Python学习教程:另辟蹊径,appium抓取app应用数据了解一下

    原标题:Python学习教程:另辟蹊径,appium抓取app应用数据了解一下 作为爬虫工程师,没有价格不知道selenium的. 什么是selenium? Selenium原本是一个用于Web应用程 ...

  5. Appium+Python移动端(Android)自动化测试环境搭建原来没有那么难!+ 带你实战去

    Appium 是一个移动端的自动化框架,可用于测试原生应用,移动网页应用和混合型应 用,且是跨平台的.可用于 ios 和 Android 操作系统. Appium+Python 一.前提 1.1 JD ...

  6. Appium+Python第一篇:appium的基本使用及启动APP

    一.appium的基本使用 appium环境安装 1.安装Android SDK (1)配置环境变量 用户变量的path添加以下三个路径: %ANDROID_HOME%\build-tools\31. ...

  7. python教程是什么-Python基础教程_Python入门知识

    Python基础教程频道为编程初学者提供入门前的所有基础知识,必须要掌握的一些PYTHON基础语法语句,基本的数据类型. 让大家可以更快速.更容易理解的的方式掌握Python编程所需要的基础知识,灵活 ...

  8. python 3教程_Python 3 教程

    全屏 Python 3 教程 Python的3.0版本,常被称为Python 3000,或简称Py3k.相对于Python的早期版本,这是一个较大的升级.为了不带入过多的累赘,Python 3.0在设 ...

  9. python基础教程是什么-Python基础教程_Python入门知识

    Python基础教程频道为编程初学者提供入门前的所有基础知识,必须要掌握的一些PYTHON基础语法语句,基本的数据类型. 让大家可以更快速.更容易理解的的方式掌握Python编程所需要的基础知识,灵活 ...

最新文章

  1. 探究Java虚拟机栈
  2. Mybatis Plus为什么提供BaseMapper和IService两个相似CRUD操作的接口?
  3. php 有indexof函数吗,详解PHP处理字符串类似indexof的方法函数
  4. MonoDroid相关资源
  5. 文本挖掘(part1)--文本挖掘概述
  6. linux 路径结构
  7. SQL语言入坑—1.数据的检索、排序、过滤、分组
  8. magic ui3.0是鸿蒙系统吗,magicui3.1更新内容要不要升级 magicui3.0新功能体验
  9. 干货:完全基于情感词典的文本情感分析
  10. 【解决办法】EFI分区扩容/win10更新提示“我们无法更新系统保留的分区”
  11. 服务器引导盘装系统怎么选择u盘,小编教你怎么设置u盘为启动盘
  12. php 无限子站cms,PHP整理CMS无限层级目录(毗邻目录模式)
  13. WPF 动画闪烁效果
  14. 操作系统:图文详解神秘的”内存映射“
  15. 明渠如何快速估算水流量(明渠流量计算)
  16. [035] 微信公众帐号开发教程第11篇-符号表情的发送(上)
  17. Nginx自动封禁IP
  18. Dell R710 iDRAC6 远程控制卡设置
  19. 微软surface laptop2系统安装
  20. shell脚本 定义一个变量 if else判断变量是否等于某个值

热门文章

  1. [Tracking] KCF + KalmanFilter目标跟踪
  2. 一目了然了解JAVA集合体系
  3. 2018.3.15校内互测总结-点分治-线段树
  4. Dynamics CRM2016 Web API之创建记录
  5. Windows 10 开发日记(五)-- 当Binding遇到异步 -- 解决方案
  6. sqlserver 三种恢复模式
  7. msys下产生dll的导入库
  8. C#实现光盘做启动盘
  9. 定义自己的rm command
  10. 服务器架设笔记——Apache模块开发基础知识