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中input()与raw_input()的区别分析
Feb 27 Python
Python中类型检查的详细介绍
Feb 13 Python
解决Python2.7读写文件中的中文乱码问题
Apr 12 Python
python实现最长公共子序列
May 22 Python
删除python pandas.DataFrame 的多重index实例
Jun 08 Python
python实现词法分析器
Jan 31 Python
对Python Pexpect 模块的使用说明详解
Feb 14 Python
Python中正反斜杠(‘/’和‘\’)的意义与用法
Aug 12 Python
Python SSL证书验证问题解决方案
Jan 13 Python
python图片指定区域替换img.paste函数的使用
Apr 09 Python
python matplotlib.pyplot.plot()参数用法
Apr 14 Python
Python 如何实现数据库表结构同步
Sep 29 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 文件扩展名 获取函数
2009/06/03 PHP
以文件形式缓存php变量的方法
2015/06/26 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
TP5框架实现自定义分页样式的方法示例
2020/04/05 PHP
php设计模式之中介者模式分析【星际争霸游戏案例】
2020/03/23 PHP
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
jQuery ajax(复习)—Baidu ajax request分离版
2013/01/24 Javascript
javascript 函数及作用域总结介绍
2013/11/12 Javascript
JS实现简单的顶部定时关闭层效果
2014/06/15 Javascript
Javascript正则控制文本框只能输入整数或浮点数
2014/09/02 Javascript
jQuery给元素添加样式的方法详解
2015/12/30 Javascript
JavaScript仿商城实现图片广告轮播实例代码
2016/02/06 Javascript
AngularJS ng-change 指令的详解及简单实例
2016/07/30 Javascript
原生js实现可爱糖果数字时间特效
2016/12/30 Javascript
微信小程序tabbar不显示解决办法
2017/06/08 Javascript
jQuery实现手势解锁密码特效
2017/08/14 jQuery
Vue入门之数据绑定(小结)
2018/01/08 Javascript
基于three.js实现的3D粒子动效实例代码
2019/04/09 Javascript
uploadify插件实现多个图片上传并预览
2019/09/30 Javascript
vue中上传视频或图片或图片和文字一起到后端的解决方法
2019/12/01 Javascript
JS代码优化的8点建议
2020/02/04 Javascript
JS可断点续传文件上传实现代码解析
2020/07/30 Javascript
js canvas实现俄罗斯方块
2020/10/11 Javascript
简单掌握Python中glob模块查找文件路径的用法
2016/07/05 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
2017/07/17 Python
pandas使用apply多列生成一列数据的实例
2018/11/28 Python
对python制作自己的数据集实例讲解
2018/12/12 Python
python自定义线程池控制线程数量的示例
2019/02/22 Python
详解python中递归函数
2019/04/16 Python
HTML5学习心得总结(推荐)
2016/07/08 HTML / CSS
大学军训感言
2014/01/10 职场文书
长安大学毕业生自我鉴定
2014/01/17 职场文书
天地会口号
2014/06/17 职场文书
安全生产月宣传标语
2014/10/06 职场文书
八年级作文之我的母亲
2019/12/10 职场文书
python文件名批量重命名脚本实例代码
2021/04/22 Python