app自动化测试---desired capabilities

Capabilities

capabilities是什么?

Desired Capabilities是一个键值对的组合,在Python里面是一个字典。客户端将这些键值对发送给appium服务器,告诉服务器怎么测试。
desired Capabilities例子:

 1 # -*- coding:utf-8 -*-
 2 desired_caps = {}  # 字典
 3 desired_caps['platformName'] = "Android"       # 设备版本号,需要测试的手机的操作系统
 4 desired_caps['platformVersion'] = '7.0'         # 手机操作系统版本
 5 desired_caps['deviceName'] = "DIYTHYTCCQBIV47D" # 使用手机的类型或模拟器的类型,adb devices获得
 6 desired_caps['udid'] = "DIYTHYTCCQBIV47D"       # 同上
 7 # 手机web应用自动化测试
 8 desired_caps['browserName'] = ''  # 需要进行自动化测试的web浏览器,对APP应用进行测试的话至于空值。Chrome、Browser、Chromlum
 9 '''
10 应用的包名,在参数中如果添加了应用的安装路径,就可以不用写包名和启动的activity参数
11 desired_caps['app'] = r'D:\test\test.apk' #被测试的APP在电脑的路径
12 '''
13 desired_caps['appPackage'] = 'com.android.mms' # APP的package在uiautomatorviewer或appium中可以获得
14 desired_caps['appActivity'] = '.ui.activity.InitActivity'   # 相当于APP的每个页面,appium里面可以获得  
15 desired_caps['unicodeKeyboard'] = "True"                    # 开启Unicode键盘
16 desired_caps['resetKeyboard'] = "True"
17 desired_caps['newCommandTimeout'] = 30                      # 设置命令超时时间,单位秒  
18 '''
19 混合应用:正确的用appium测试微信h5的方法如下:
20 desired_caps['chromeOptions'] = {'androidProcess': 'com.tencent.mm:tools'}
21 '''
22 driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)

 

 

Unicode键盘设置

 

文本框(TextField)

在做安卓自动化中,desired Capabilities中有这么两句设置:

desired_caps['unicodeKeyboard'] = "True"                    # 开启Unicode键盘
desired_caps['resetKeyboard'] = "True"

下面再学习总结一下:

 

默认情况下,iOS和Android的自动化工具(手机、模拟器)都不支持向输入框中输入非ASCII字符的。

iOS先不去研究了。跳过。

appium针对这个问题,怎么解决Android自动化问题呢?

通过下载安装一个特殊的键盘,Android可以支持Unicode字符,这个输入法允许文本通通过ASCII在appium和被测试应用之间进行同行。

所以需要设置:

unicodeKeyBoard 设置为True;如果要键盘设置在测试完成后回到原始状态,需要将resetKeyBoard也设置为True,否则appium测试结束后,appium的Unicode键盘仍然会被激活。

设置后,就可以通过send_keys()方法向输入框输入Unicode字符了。

备注:

这个Unicode键盘并非虚拟键盘,在界面上不会显示出来,要进行其他类型的测试必须切回其他输入法。

总的来说,就是在desired Capabilities中增加:上面两句设置。

 

下面关于这些参数进行汇总

在参数中如果添加了应用的安装路径,就可以不用写包名和启动的activity参数

devicesName这个参数必须的有,在安卓的测试过程中,必须要写。

通用参数:

 

安卓专用参数:

 

iOS专用参数:

 

 图片来自:http://blog.csdn.net/Yejianyun1/article/details/56279051

posted @ 2018-09-29 14:29  iSZ  阅读(499)  评论(0编辑  收藏  举报