怎么在Python中利用Appium实现一个自动化测试功能
怎么在Python中利用Appium实现一个自动化测试功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
一、环境准备
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/
点击下载按钮会到GitHub的下载页面,选择对应平台下载
安装完成后,启动Appium,host和port默认的即可,然后设置Android SDk和Java JDK
然后点下边那个保存并重启的按钮,然后点第一个Start Server按钮,将会看到
二、真机测试
1.连接手机
打开开发者模式,USB线连接手机和电脑,并且在开发者选项当中,开启USB调试
测试是否连接成功,可执行命令adb devices
出现上图就证明手机和电脑连接成功。。。
2.点击Start Inspector Session,
按如下配置Desired Capabilities
platformName:声明是ios还是Android系统
platformVersion: Android内核版本号,可通过命令adb shell getprop ro.build.version.release查看
deviceName:连接的设备名称,通过命令adb devices -l中model查看
appPackage:apk的包名
appActivity:apk的launcherActivity,通过命令adb shell dumpsys activity | findstr “mResume”查看(需先打开手机应用)
注意:Android 8.1之前应使用adb shell dumpsys activity | findstr “mFocus”
3.运行Start Session,选择元素
右侧 Selected Element 区域有三个按钮
Tap:执行选中元素的点击事件Send Keys:为文本框等对象传值如果是文本输入元素,就清除文本
4.录制脚本
录制生成的python代码如下:
#ThissamplecodeusestheAppiumpythonclient #pipinstallAppium-Python-Client #ThenyoucanpastethisintoafileandsimplyrunwithPython fromappiumimportwebdriver 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依赖包
最后,记一个我在这些过程中遇到的问题(现已解决)
在Appium-desktop中运行Start Session时,出现
解决方法:在开发者模式下,打开usb调试功能和use模拟点击,两个都要打开,此时再重新运行,即可解决
关于怎么在Python中利用Appium实现一个自动化测试功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注恰卡编程网行业资讯频道了解更多相关知识。
推荐阅读
-
Python中怎么动态声明变量赋值
这篇文章将为大家详细讲解有关Python中怎么动态声明变量赋值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文...
-
python中变量的存储原理是什么
-
Python中怎么引用传递变量赋值
这篇文章将为大家详细讲解有关Python中怎么引用传递变量赋值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文...
-
python中怎么获取程序执行文件路径
python中怎么获取程序执行文件路径,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的...
-
Python中如何获取文件系统的使用率
Python中如何获取文件系统的使用率,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴...
-
Python中怎么获取文件的创建和修改时间
这篇文章将为大家详细讲解有关Python中怎么获取文件的创建和修改时间,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读...
-
python中怎么获取依赖包
今天就跟大家聊聊有关python中怎么获取依赖包,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据...
-
python怎么实现批量文件加密功能
-
python中怎么实现threading线程同步
小编给大家分享一下python中怎么实现threading线程同步,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!...
-
python下thread模块创建线程的方法
本篇内容介绍了“python下thread模块创建线程的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来...