目录

一、环境准备

1.脚本语言:python3.x ide:安装pycharm

2.安装java jdk 、android sdk

3.adb环境,path添加e:\software\android_sdk\platform-tools

4.安装appium for windows,官网地址

点击下载按钮会到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代码如下:

# 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依赖包

最后,记一个我在这些过程中遇到的问题(现已解决)

在appium-desktop中运行start session时,出现

解决方法:在开发者模式下,打开usb调试功能和use模拟点击,两个都要打开,此时再重新运行,即可解决

到此这篇关于python+appium自动化测试的实战的文章就介绍到这了,更多相关python appium自动化测试内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!