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实现堆栈与队列的方法
Jan 15 Python
Windows下实现Python2和Python3两个版共存的方法
Jun 12 Python
Python实现将目录中TXT合并成一个大TXT文件的方法
Jul 15 Python
Python中垃圾回收和del语句详解
Nov 15 Python
python实现对输入的密文加密
Mar 20 Python
Apache,wsgi,django 程序部署配置方法详解
Jul 01 Python
postman传递当前时间戳实例详解
Sep 14 Python
Python面向对象之私有属性和私有方法应用案例分析
Dec 31 Python
Pytorch 的损失函数Loss function使用详解
Jan 02 Python
Django 项目通过加载不同env文件来区分不同环境
Feb 17 Python
Pycharm插件(Grep Console)自定义规则输出颜色日志的方法
May 27 Python
Python中的变量与常量
Nov 11 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常用特殊运算符号和函数总结(php新手入门必看)
2013/02/02 PHP
PHP实现的memcache环形队列类实例
2015/07/28 PHP
php将文件夹打包成zip文件的简单实现方法
2016/10/04 PHP
php批量转换文件夹下所有文件编码的函数类
2017/08/06 PHP
php读取本地json文件的实例
2018/03/07 PHP
Javascript 跨域访问解决方案
2009/02/14 Javascript
JavaScript小技巧 2.5 则
2010/09/12 Javascript
利用NodeJS的子进程(child_process)调用系统命令的方法分享
2013/06/05 NodeJs
javascript在子页面中函数无法调试问题解决方法
2014/01/17 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
微信小程序 wxapp内容组件 text详细介绍
2016/10/31 Javascript
BootStrap Fileinput初始化时的一些参数
2016/12/30 Javascript
AngularJS入门教程一:路由用法初探
2017/05/27 Javascript
javascript实现文字无缝滚动效果
2017/08/26 Javascript
Vue Promise的axios请求封装详解
2018/08/13 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
2018/12/09 Javascript
vuex入门最详细整理
2020/03/04 Javascript
JavaScript代码模拟鼠标自动点击事件示例
2020/08/07 Javascript
[01:07]2015国际邀请赛 中国区预选赛精彩回顾
2015/06/15 DOTA
Python 正则表达式(转义问题)
2014/12/15 Python
python在不同层级目录import模块的方法
2016/01/31 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
使用Keras预训练好的模型进行目标类别预测详解
2020/06/27 Python
使用python库xlsxwriter库来输出各种xlsx文件的示例
2020/09/01 Python
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
美国半成品食材配送服务商:Home Chef
2018/01/25 全球购物
Travelstart沙特阿拉伯:廉价航班、豪华酒店和实惠的汽车租赁优惠
2019/04/06 全球购物
Dr. Martens马汀博士澳大利亚官网:马丁靴鼻祖
2019/07/02 全球购物
计算s=f(f(-1.4))的值
2014/05/06 面试题
农村葬礼主持词
2014/03/31 职场文书
2015年社区工作总结
2015/04/08 职场文书
商务宴会祝酒词
2015/08/11 职场文书
2016年小学植树节活动总结
2016/03/16 职场文书
mysql 数据插入优化方法之concurrent_insert
2021/07/01 MySQL
Flask response响应的具体使用
2021/07/15 Python
实战Python爬虫爬取酷我音乐
2022/04/11 Python