Python+Appium实现自动化测试的使用步骤


Posted in Python onMarch 24, 2020

一、环境准备

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/

Python+Appium实现自动化测试的使用步骤

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

Python+Appium实现自动化测试的使用步骤

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

Python+Appium实现自动化测试的使用步骤

Python+Appium实现自动化测试的使用步骤

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

Python+Appium实现自动化测试的使用步骤

二、真机测试

1.连接手机

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

Python+Appium实现自动化测试的使用步骤

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

Python+Appium实现自动化测试的使用步骤

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

2.点击Start Inspector Session,

Python+Appium实现自动化测试的使用步骤

按如下配置Desired Capabilities

Python+Appium实现自动化测试的使用步骤

platformName:声明是ios还是Android系统

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

Python+Appium实现自动化测试的使用步骤

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

Python+Appium实现自动化测试的使用步骤

appPackage:apk的包名

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

Python+Appium实现自动化测试的使用步骤

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

3.运行Start Session,选择元素

Python+Appium实现自动化测试的使用步骤

右侧 Selected Element 区域有三个按钮

Tap:执行选中元素的点击事件Send Keys:为文本框等对象传值如果是文本输入元素,就清除文本

4.录制脚本

Python+Appium实现自动化测试的使用步骤

录制生成的python代码如下:

# This sample code uses the Appium python client
# pip install Appium-Python-Client
# Then you can paste this into a file and simply run with Python

from appium 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依赖包

Python+Appium实现自动化测试的使用步骤

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

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

Python+Appium实现自动化测试的使用步骤

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

到此这篇关于Python+Appium实现自动化测试的使用步骤的文章就介绍到这了,更多相关Python Appium 自动化测试 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python random模块常用方法
Nov 03 Python
Python3 正在毁灭 Python的原因分析
Nov 28 Python
python使用Flask框架获取用户IP地址的方法
Mar 21 Python
python中os模块详解
Oct 14 Python
Python对HTML转义字符进行反转义的实现方法
Apr 28 Python
使用Python实现将list中的每一项的首字母大写
Jun 11 Python
PyQt QListWidget修改列表项item的行高方法
Jun 20 Python
Django实现发送邮件功能
Jul 18 Python
如何定义TensorFlow输入节点
Jan 23 Python
对tensorflow中cifar-10文档的Read操作详解
Feb 10 Python
django使用graphql的实例
Sep 02 Python
如何让PyQt5中QWebEngineView与JavaScript交互
Oct 21 Python
Python3标准库之dbm UNIX键-值数据库问题
Mar 24 #Python
python网络编程socket实现服务端、客户端操作详解
Mar 24 #Python
python实现批量修改文件名
Mar 23 #Python
Python3 filecmp模块测试比较文件原理解析
Mar 23 #Python
python实现遍历文件夹图片并重命名
Mar 23 #Python
Python3 mmap内存映射文件示例解析
Mar 23 #Python
Python3 io文本及原始流I/O工具用法详解
Mar 23 #Python
You might like
php单例模式实现方法分析
2015/03/14 PHP
Docker 如何布置PHP开发环境
2016/06/21 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
2017/07/10 PHP
js 全兼容可高亮二级缓冲折叠菜单
2010/06/04 Javascript
JavaScript.Encode手动解码技巧
2010/07/14 Javascript
jquery showModelDialog的使用方法示例详解
2013/11/19 Javascript
escape编码与unescape解码汉字出现乱码的解决方法
2014/07/02 Javascript
AngularJS模块管理问题的非常规处理方法
2015/04/29 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
2016/06/07 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
2016/08/25 Javascript
使用JavaScript为一张图片设置备选路径的方法
2017/01/04 Javascript
原生js仿淘宝网商品放大镜效果
2017/02/28 Javascript
Vue中render方法的使用详解
2018/01/26 Javascript
webpack项目轻松混用css module的方法
2018/06/12 Javascript
在Vue中使用axios请求拦截的实现方法
2018/10/25 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
[02:27]《DAC最前线》之附加赛征程
2015/01/29 DOTA
Python的Django框架中自定义模版标签的示例
2015/07/20 Python
python 高效去重复 支持GB级别大文件的示例代码
2018/11/08 Python
使用python实现抓取腾讯视频所有电影的爬虫
2019/04/15 Python
Python中的十大图像处理工具(小结)
2019/06/10 Python
python pip源配置,pip配置文件存放位置的方法
2019/07/12 Python
Python 字符串类型列表转换成真正列表类型过程解析
2019/08/26 Python
Python Pillow.Image 图像保存和参数选择方式
2020/01/09 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
2020/04/13 Python
基于python实现地址和经纬度转换
2020/05/19 Python
Django DRF APIView源码运行流程详解
2020/08/17 Python
社区版pycharm创建django项目的方法(pycharm的newproject左侧没有项目选项)
2020/09/23 Python
Pandas替换及部分替换(replace)实现流程详解
2020/10/12 Python
英国第一独立滑雪板商店:The Snowboard Asylum
2020/01/16 全球购物
全球最大的瓷器、水晶和银器零售商:Replacements
2020/06/15 全球购物
军事博物馆观后感
2015/06/05 职场文书
关于Python中*args和**kwargs的深入理解
2021/08/07 Python
BCL经典机 SONY ICF-5900W电路分析
2022/04/24 无线电