Python+Appium自动化测试的实战


Posted in Python onJune 30, 2021
目录
  • 一、环境准备
  • 二、真机测试

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文件比较示例分享
Jan 10 Python
python异步任务队列示例
Apr 01 Python
Python中endswith()函数的基本使用
Apr 07 Python
python脚本实现xls(xlsx)转成csv
Apr 10 Python
Linux上安装Python的PIL和Pillow库处理图片的实例教程
Jun 23 Python
Python数据分析之如何利用pandas查询数据示例代码
Sep 01 Python
Python实现字符串与数组相互转换功能示例
Sep 22 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
Apr 19 Python
基于python的多进程共享变量正确打开方式
Apr 28 Python
python网络爬虫 Scrapy中selenium用法详解
Sep 28 Python
python 经典数字滤波实例
Dec 16 Python
python 中yaml文件用法大全
Jul 04 Python
如何使用pdb进行Python调试
Pytest中skip skipif跳过用例详解
Pytest中skip和skipif的具体使用方法
Python将CSV文件转化为HTML文件的操作方法
如何使用Tkinter进行窗口的管理与设置
Python 语言实现六大查找算法
详解MindSpore自定义模型损失函数
You might like
php getimagesize 上传图片的长度和宽度检测代码
2010/05/15 PHP
php的urlencode()URL编码函数浅析
2011/08/09 PHP
php中$_GET与$_POST过滤sql注入的方法
2014/11/03 PHP
ThinkPHP连接数据库的方式汇总
2014/12/05 PHP
网页设计常用的一些技巧
2006/12/22 Javascript
jQuery的Ajax时无响应数据的解决方法
2010/05/25 Javascript
JavaScript 用cloneNode方法克隆节点的代码
2012/10/15 Javascript
JavaScript根据数据生成百分比图和柱状图的实例代码
2013/07/14 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
使用plupload自定义参数实现多文件上传
2016/07/19 Javascript
js删除数组元素、清空数组的简单方法(必看)
2016/07/27 Javascript
JavaScript与java语言有什么不同
2016/09/22 Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
2017/01/03 Javascript
完美的js图片轮换效果
2017/02/05 Javascript
BootStrap的双日历时间控件使用
2017/07/25 Javascript
jQuery实现腾讯信用界面(自制刻度尺)样式
2017/08/15 jQuery
详解如何让Express支持async/await
2017/10/09 Javascript
详解React-Router中Url参数改变页面不刷新的解决办法
2018/05/08 Javascript
微信小程序通过保存图片分享到朋友圈功能
2018/05/24 Javascript
微信小程序Flex布局用法深入浅出分析
2019/04/25 Javascript
Vue.extend实现挂载到实例上的方法
2019/05/01 Javascript
js实现鼠标点击页面弹出自定义文字效果
2019/12/24 Javascript
你准备好迎接vue3.0了吗
2020/04/28 Javascript
原生js实现点击按钮复制内容到剪切板
2020/11/19 Javascript
python服务器与android客户端socket通信实例
2014/11/12 Python
Python的Flask框架的简介和安装方法
2015/11/13 Python
Python 数据处理库 pandas 入门教程基本操作
2018/04/19 Python
Python批量发送post请求的实现代码
2018/05/05 Python
基于python if 判断选择结构的实例详解
2019/05/06 Python
python下载卫星云图合成gif的方法示例
2020/02/18 Python
阿玛瑞酒店中文官方网站:Amari.com
2018/02/13 全球购物
Big Green Smile法国:领先的英国有机和天然产品在线商店
2021/01/02 全球购物
夜大毕业生自我评价分享
2013/11/10 职场文书
2015年班组工作总结
2015/04/20 职场文书
2015年评职称个人工作总结
2015/10/15 职场文书
mysql拆分字符串作为查询条件的示例代码
2022/07/07 MySQL