Appium+Python-入门实例(计算器)
一、创建项目
二、创建python文件
三、添加Appium-Python-Client
通俗地说,Pycharm是编辑器 用来写代码的,Appium是测试框架 用来告诉手机设备要做什么事,Appium-Python-Client是驱动包 用来关联python和appium的,即Pycharm写好脚本后,会通过Appium-Python-Client调用Appium,让Appium告诉手机设备去做脚本里定义好的事情。
四、实例演示
自动化场景:自动打开计算器,触发点击7+9=16的操作,具体准备事项如下:
1、电脑连接真机,手机打开开发者调试模式,并且打开要调用的软件,接下来需要查询设备名和app包名:
1)获取当前设备名:adb devices
2)获取当前app和当前activity:adb shell dumpsys window w |findstr \/ |findstr name=
2、打开UI Automator Viewer,点击按钮会自动捕获手机当前窗口,此时把鼠标放到想要定位的元素上时,右侧会展示相关信息,这里用id来定位,具体如下:
1)数字7的resource-id:com.android.calculator2:id/digit_7
2)运算符+的rescource-id:com.android.calculator2:id/op_add
3)数字9的resource-id:com.android.calculator2:id/digit_9
4)=的resource-id:com.android.calculator2:id/eq
3、代码准备
1 from appium import webdriver 2 import time 3 4 calculator = { 5 'platformName':'Android', # android的apk 6 'deviceName':'WTKDU16905017501', # 手机设备名称,通过adb devices查看 7 'platformVersion':'8.0', # android系统的版本号 8 'appPackage':'com.android.calculator2', # apk包名 9 'appActivity':'com.android.calculator2.Calculator' # apk的launcherActivity 10 } 11 # 默认开启4723端口用于和android通讯 12 driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',calculator) 13 time.sleep(2) 14 15 def cal(): 16 driver.find_element_by_id("com.android.calculator2:id/digit_7").click() # 用id元素定位到7 17 driver.find_element_by_id("com.android.calculator2:id/op_add").click() # 用id元素定位到+ 18 driver.find_element_by_id("com.android.calculator2:id/digit_9").click() # 用id元素定位到9 19 driver.find_element_by_id("com.android.calculator2:id/eq").click() # 用id元素定位到= 20 driver.quit() # 运行完成后退出 21 cal() #调用cal
4、运行appium,如图
5、万事俱备,接下来只需运行脚本就可以触发自动化测试,如下:
注:运行脚本时可能会遇到appium在android7.0以上版本找不到元素问题,到时可以参考:https://testerhome.com/topics/9684
其他报错问题,可以参考,或许会有帮助:https://www.cnblogs.com/wangcp-2014/p/6137088.html
附上gif效果图
以上便开启自动化测试的大门,请坚持!!!