Appium Appium 入门到实战 03 篇 - Appum 入门案例

wywy · October 19, 2019 · 981 hits

原文: https://mp.weixin.qq.com/s/ohB96u2E-Jv6d_VZttmQZw

今天要分享的是Appium简单的案例
前面我们讲到环境搭建和启动参数配置
那么现在就可以开始动手干了

首先需要一个手机驱动对象,驱动对象会帮我们完成手机和脚本之间交互

  1. 导入驱动对象
    from appium import webdriver

  2. 声明手机驱动对象
    声明方法如下:
    driver=webdriver.Remote('http://127.0.0.1:4723/wb/hub,desired_caps')
    前面的URL是appium服务端地址,可变,后边部分/wb/hub是固定的,wb代表webdriver,desired_caps是启动参数

  3. 手机启动参数
    请参考: Appium 02篇 - DesiredCapabilities启动参数配置

要注意的是如何获取app包名appPackage和启动名appActivity?
1.mac/linux使用:adb shell dumpsys window windows | grep mFocusedApp
2.windows使用:adb shell dumpsys window windows | findstr mFocusedApp

  1. 脚本内启动其他app
    driver.start_activity( appPackage,appActivity )

    1. 关闭app,不会关闭驱动对象 driver.close_app()
    2. 关闭驱动对象,即关闭所有关联的ap driver.quit()

最后我们来一个参考实例

导包

from appium import webdriver
desired_caps = {'platformName': 'Android', # 系统
# 'platformVersion': '8.0.0', # 版本号
'deviceName': device_name_honor, # 设备号 可以参数化
'appPackage': 'com.tencent.mm', # 包名
'appActivity': '.ui.LauncherUI', # 启动名
'unicodeKeyboard': True, # 允许输入中文
'resetKeyboard': True,
'autoAcceptAlerts': True,

# 默认选择接受弹窗的条款,有些app启动的时候,会有一些权限的弹窗
'reuse': 3,
'noReset': True,

每次appium对app进行操作,为了不保存修改数据和app设置的内容而不影响下次使用,需要设置为true

'automationName': "UiAutomator2",
'chromeOptions':
{'androidProcess': 'com.tencent.mm:tools',
'args': ['--no-sandbox']
}
}

声明手机驱动对象,URL是appium的服务地址,后边的是启动参数,是一个字典类型

driver = webdriver.Remote ( 'http://127.0.0.1:4723/wd/hub', desired_caps )

关闭app

driver.close_app ()

打开其他app软件

driver.start_activity ( 'com.android.contacts', '.activities.DialtactsActivity' )

关闭驱动对象

driver.quit ()

以后还会继续更新Appium系列
请大家持续关注!
想要获取appium相关教程
公众号回复关键字【appium】
或【资料】获取更多

No Reply at the moment.
需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up