Appium1.9.1 之 Desired Capabilities 释疑

服务关键字

Desired Capabilities在启动session的时候是必须提供的。

Desired Capabilities本质上是以key value字典的方式存放,客户端将这些键值对发给服务端,告诉服务端我们想要怎么测试。

 1 # -*- coding:utf-8 -*-
 2 from appium import webdriver
 3 import unittest
 4 
 5 class MyTest(unittest.TestCase):
 6     def setUp(self):
 7         desired_caps = {}        
 8         desired_caps['platformName'] ='Android'        
 9         desired_caps['platformVersion'] ='7.0'       
10         desired_caps['deviceName'] ='DIYTHYTCCQBIV47D'       
11         desired_caps['appPackage'] ='com.txt.calculator'        
12         desired_caps['appActivity'] ='.Calculator'        
13         desired_caps["unicodeKeyboard"] ="True"        
14         desired_caps["resetKeyboard"] ="True"        
15         self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

它告诉appium Server这样一些事情:

•platformName:使用哪种移动平台。iOS, Android, orFirefoxOS。

•platformVersion:指定平台的系统版本。例如指的Android平台,版本为7.0,这个版本号一定要跟手机的实际版本号保持一致,否则在运行时会报(Original error: Unable to find an active device or emulator with OS 6.0. The following are available: DIYTHYTCCQBIV47D (7.0))。

•deviceName:启动哪种设备,是真机还是模拟器?iPhone Simulator,iPad Simulator,iPhone Retina 4-inch,Android Emulator,如果是真机,则直接把手机序列号填入。

•appPackage:待测试的app的Java package。比如com.example.android.myApp, com.android.settings。

•appActivity:待测试的app的Activity名字。比如MainActivity、.Settings。注意,原生app的话要在activity前加个”.“,请以实际查出来的activity为准。

•automationName:使用哪种自动化引擎。appium(默认)还是Selendroid。

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

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

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