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网络编程学习笔记(九):数据库客户端 DB-API
Jun 09 Python
分享Python字符串关键点
Dec 13 Python
Python之自动获取公网IP的实例讲解
Oct 01 Python
Python复制Word内容并使用格式设字体与大小实例代码
Jan 22 Python
详解Python 数据库的Connection、Cursor两大对象
Jun 25 Python
Pythony运维入门之Socket网络编程详解
Apr 15 Python
使用Python实现将list中的每一项的首字母大写
Jun 11 Python
python add_argument()用法解析
Jan 29 Python
Django使用Celery加redis执行异步任务的实例内容
Feb 20 Python
Python使用Matlab命令过程解析
Jun 04 Python
tensorflow 2.0模式下训练的模型转成 tf1.x 版本的pb模型实例
Jun 22 Python
基于python实现操作git过程代码解析
Jul 27 Python
如何使用pdb进行Python调试
Pytest中skip skipif跳过用例详解
Pytest中skip和skipif的具体使用方法
Python将CSV文件转化为HTML文件的操作方法
如何使用Tkinter进行窗口的管理与设置
Python 语言实现六大查找算法
详解MindSpore自定义模型损失函数
You might like
php 数组动态添加实现代码(最土团购系统的价格排序)
2011/12/30 PHP
解析php中curl_multi的应用
2013/07/17 PHP
php简单备份与还原MySql的方法
2016/05/09 PHP
php mysql 封装类实例代码
2016/09/18 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
PHP如何通过date() 函数格式化显示时间
2020/11/13 PHP
分享20多个很棒的jQuery 文件上传插件或教程
2011/09/04 Javascript
js图片预加载示例
2014/04/30 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
JS控制表格实现一条光线流动分割行的方法
2015/03/09 Javascript
原创jQuery弹出层插件分享
2015/04/02 Javascript
JavaScript仿静态分页实现方法
2015/08/04 Javascript
js仿苹果iwatch外观的计时器代码分享
2015/08/26 Javascript
BootStrap响应式导航条实例介绍
2016/05/06 Javascript
关于List.ToArray()方法的效率测试
2016/09/30 Javascript
jQuery获取复选框选中的当前行的某个字段的值
2017/09/15 jQuery
通过源码分析Vue的双向数据绑定详解
2017/09/24 Javascript
BootStrap Validator 根据条件在JS中添加或移除校验操作
2017/10/12 Javascript
AngularJS实现表单验证功能详解
2017/10/12 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
2017/10/16 Javascript
JS中使用cavas截图网页并解决跨域及模糊问题
2018/11/13 Javascript
详解小程序横屏方案对比
2020/06/28 Javascript
使用Python的Tornado框架实现一个一对一聊天的程序
2015/04/25 Python
详解C++编程中一元运算符的重载
2016/01/19 Python
Odoo中如何生成唯一不重复的序列号详解
2018/02/10 Python
对numpy中数组转置的求解以及向量内积计算方法
2018/10/31 Python
Python 支付整合开发包的实现
2019/01/23 Python
python基于TCP实现的文件下载器功能案例
2019/12/10 Python
Django后端发送小程序微信模板消息示例(服务通知)
2019/12/17 Python
python中执行smtplib失败的处理方法
2020/07/01 Python
美国嘻哈首饰购物网站:Hip Hop Bling
2016/12/30 全球购物
美国班级戒指、帽子和礼服、毕业产品、年鉴:Balfour
2018/11/01 全球购物
活动总结结尾怎么写
2014/08/30 职场文书
群众路线领导班子四风对照检查材料
2014/09/27 职场文书
大学迎新生标语
2014/10/06 职场文书
vue postcss-px2rem 自适应布局
2022/05/15 Vue.js