Appium脚本启动参数如何设置

一、确认环境

自动化测试涉及到手机、电脑以及Appium服务等多端交互,在正式开始之前,首先我们要确认一下环境是否正确安装:

  • 连接手机或者打开模拟器
  • adb devices 确认手机被识别
  • 启动 Appium 服务,并设置端口
  • 运行 Python 脚本

如果没有安装appium环境请参考:Appium环境搭建保姆级教程

二、编写Appium启动脚本

Appium是一个支持多平台的自动化测试框架,启动Appium程序需要提供 platformName 参数,指明需要使用哪个操作系统的自动化引擎:

from appium.webdriver import Remote
caps = dict(platformName="Android")
driver = Remote(desired_capabilities=caps)

打开手机,如果需要访问具体的App,将App的安装包路径也放到 caps 中,如果不传 app 参数,则默认打开设备首页。

caps = dict(platformName="Android",
			app="/path/iBiliPlayer-bilibili.apk")

电脑上也有可能连接多个手机,如果有多个手机,需要指定想操作的手机设备,使用 udid 参数,设备号可以输入adb devices 获取。通常情况下,要对某个app进行自动化测试,这三个启动参数是最常见的。

caps = dict(platformName="Android",
			app="/path/iBiliPlayer-bilibili.apk",
			udid='emulator-5554')

当这些数据准备好了之后,我们可以直接通过给 Appium 提供的 Remote类,连接对应的app。操作完成之后,通过 quit 方法来退出整个会话。

一定要记得quit,否则后面在进行元素定位的时候,可能会出现无法获取页面源码的错误。

from appium.webdriver import Remote

file = '/path/iBiliPlayer-bilibili.apk'

caps = dict(platformName="Android",
			app=file,
			udid='emulator-5554')

driver = Remote(desired_capabilities=caps)
driver.quit()

三、通过包名启动 App

通常情况下,Appium 可以通过apk的路径来直接操作指定的app。但是又是不方便拿到 apk 文件,而我们的手机上已经装好了要测试的 app, 那么可以通过 app 的包名来启动。

from appium.webdriver import Remote

caps = {
    "platformName": "Android",
    "udid": "emulator-5554",
    "appPackage": "com.bilibili.app.blue",
    "appActivity": "tv.danmaku.bili.ui.splash.SplashActivity"
}

driver = Remote(desired_capabilities=caps)
driver.quit()

四、如何获取App包名和Activity名称

通过下面的命令可以直接得到启动 app 的 appPackage 参数和 appActivity 参数,

adb logcat | findStr -i displayed

输入命令后,手工点击进入 app, 可以显示手机最近打开了哪些页面,最近打开的页面会显示在最下方,从而我们得到了需要的参数。

https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/0db6ee4253644507902aa678c53e3142~tplv-k3u1fbpfcp-zoom-1.image

常用启动参数

Appium 还有很多启动参数,可以在官方的 Desired Capbility 中查看。只有 platformName 是必填的,其他都是可选。

常用启动参数:

  • platformName 必选
  • deviceName / udid 必选
  • app 安装路径
  • appActivity 和 appPackage,
  • platformVersion 可选,版本不匹配会报错
  • noReset 不重置, True
  • automationName
  • browserName, 直接测web用, Chrome
  • autoWebview, 开机进入webview模式
  • chromedriverExecutable
  • chromedriverExecutableDir
  • unicodeKeyboard
  • resetKeyboard
  • autoGrantPermissions

五、一个完整的自动化脚本

通过一个完整的脚本说明一下。

1、连接手机,启动 app

2、元素定位,执行操作

3、退出程序

from appium.webdriver import Remote

caps = {
    "platformName": "Android",
    "udid": "emulator-5554",
    "appPackage": "com.bilibili.app.blue",
    "appActivity": "tv.danmaku.bili.ui.splash.SplashActivity"
}

driver = Remote(desired_capabilities=caps,
                command_executor = 'http://127.0.0.1:4723/wd/hub')
driver.implicitly_wait(10)
driver.find_element('id', 'com.bilibili.app.blue:id/agree').click()
driver.quit()

本文完,如果不过瘾,我还整理了软件测试入门到进阶的完整笔记,可以点击查看:

软件测试需要学习什么?

已经更新的内容有 Selenium网页端web自动化测试

  • 一、为什么用Selenium做自动化测试

  • 二、Selenium chromedriver安装教程和快速使用

  • 四、Selenium元素定位方式

  • 五、Selenium等待方式

  • 六、Selenium滚动页面

  • 七、Selenium如何使用POM分层模式

  • 八、Selenium关键字驱动自动化测试框架

Appium移动端App自动化测试

  • 一、Appium环境搭建保姆级教程

  • 二、Appium五分钟快速上手

  • 三、Appium如何进行元素定位

  • 四、Appium核心API操作

  • 五、Appium获取和点击坐标

  • 六、Appium实现图片放大和缩小

  • 七、Appium H5 页面怎么测试

  • 八、Appium 2.0 发布,如何升级

  • 九、Appium并发测试如何做

快点进来看看吧:软件测试和自动化测试学习路线图

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Appium是一个用于自动化移动应用程序的工具,它支持多种编程语言,包括Python。在使用Appium Python脚本连接手机之前,我们首先需要安装Appium服务器和Appium Python客户端库。 首先,我们需要确保已安装Appium服务器,并启动该服务器。然后,在Python环境中安装Appium Python客户端库。可以使用pip工具来安装Appium Python客户端库: ```python pip install Appium-Python-Client ``` 接下来,我们创建一个Python脚本来连接手机,并执行一些操作。在脚本中,我们需要指定设备的一些参数,如设备名称、平台版本、应用包名等。然后,我们可以使用Appium提供的API来进行手机操作,如启动应用、查找元素、模拟手势等。 一个简单的Appium Python脚本连接手机的例子如下: ```python from appium import webdriver desired_caps = { 'platformName': 'Android', 'platformVersion': '9.0', 'deviceName': 'emulator-5554', 'appPackage': 'com.example.myapp', 'appActivity': '.MainActivity' } driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) # 执行一些操作 element = driver.find_element_by_id('com.example.myapp:id/button') element.click() # 关闭应用 driver.quit() ``` 以上代码示例中,我们使用了Appium提供的webdriver.Remote方法连接手机,并指定了设备参数。然后,我们找到了应用中的一个按钮元素,并点击了它。最后,我们使用quit方法关闭了应用。 通过编写Appium Python脚本,我们可以方便地连接手机,并实现自动化测试、应用操作等功能。同时,Appium提供了丰富的API和文档,可以帮助我们更好地进行移动应用自动化开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值