APPium+Python编写真机移动端自动化脚本的项目实践
目录
- 前置条件
- 连接设备
- 脚本编写
- 初始化设备参数
- 操作命令
- 脚本运行
前置条件
完成软件和环境的安装后就可以开始移动端自动化脚本的编写了。
连接设备
手机打开USB调试模式,连接手机。此时去命令窗口查看自己的设备是否已经连接。
让后打开Appium Server,进行配置,设置Android与Java的环境地址。
启动服务器,即可。
脚本编写
初始化设备参数
首先对于手机的参数进行填写,对于要进行测试的APP的信息也进行获取。
import time from appium import webdriver # 初始化参数 desired_caps = { 'platformName': 'Android', # 被测手机是安卓 'platformVersion': '11', # 手机安卓版本 'deviceName': 'ncaa', # 设备名,安卓手机可以随意填写 'appPackage': 'com.cainiao.wireless', # 启动APP的包名 'appActivity': '.homepage.view.activity.WelcomeActivity', # 启动的Activity名称 'noReset': True, # 不要重置App,如果为False的话,执行完脚本后,app的数据会清空,比如你原本登录了,执行完脚本后就退出登录了 'newCommandTimeout': 6000, # 命令的时间间隔 'unicodeKeyboard': True, # 绕过手机键盘操作,unicodeKeyboard是使用unicode编码方式发送字符串,即中文 'resetKeyboard': True, # 绕过手机键盘操作,resetKeyboard是将键盘隐藏起来 }
以微信为例,我们在命令窗口中输入该手机的所有的第三方软件,获取手机上所需包名。
在获取该APP登录的活动。首先在手机上打开微信,并在CMD中进行操作。从而获取到了微信的包名与登录的活动名。
# 连接Appium Server,初始化自动化环境 driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) time.sleep(5)
之后进行APPium的连接,手机就会自动打开微信了。
操作命令
下一步,我们打开Android UI分析器。获取到了目前手机页面的信息。根据我们的目的,找到自己所需的组件即可。根据其ID我们就可以在上手机上定位它,从而完成我们相要的操作。
脚本运行
具体代码与实现效果如下:
import time from appium import webdriver # 初始化参数 desired_caps = { 'platformName': 'Android', # 被测手机是安卓 'platformVersion': '11', # 手机安卓版本 'deviceName': 'ncaa', # 设备名,安卓手机可以随意填写 'appPackage': 'com.tencent.mm', # 启动APP的包名 'appActivity': '.ui.LauncherUI', # 启动的Activity名称 'noReset': True, # 不要重置App,如果为False的话,执行完脚本后,app的数据会清空,比如你原本登录了,执行完脚本后就退出登录了 'newCommandTimeout': 6000, # 命令的时间间隔 # 'unicodeKeyboard': True, # 绕过手机键盘操作,unicodeKeyboard是使用unicode编码方式发送字符串,即中文 'resetKeyboard': True, # 绕过手机键盘操作,resetKeyboard是将键盘隐藏起来 } # 连接Appium Server,初始化自动化环境 driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) # time.sleep(5) # 每个操作的等待时间 driver.implicitly_wait(5) driver.find_element_by_id('com.tencent.mm:id/fzg').click() driver.find_element_by_id('com.tencent.mm:id/auj').send_keys('川北野生小熊猫') driver.find_element_by_id('com.tencent.mm:id/ay5').click() print(" done ") time.sleep(600) driver.quit()
到此这篇关于APPium+Python编写真机移动端自动化脚本的项目实践的文章就介绍到这了,更多相关APPium Python真机移动端自动化脚本内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
赞 (0)