Desired Capabilities详解

Desired Capabilities详解,第1张

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

Desired Capabilities本质上是key value的对象,它告诉appium server这样一些事情:

本次测试是启动浏览器还是启动移动设备?

是启动andorid还是启动ios?

启动android时,app的package是什么?

启动android时,app的activity是什么?

Appium的Desired Capabilities是扩展了webdriver的Desired Capabilities的,下面的一些通用配置是需要指定的:

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

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

deviceName:启动哪种设备,是真机还是模拟器?iPhone Simulator, iPad Simulator, iPhone Retina 4-inch, Android Emulator, Galaxy S4, etc

app:应用的绝对路径,注意一定是绝对路径。如果指定了appPackage和appActivity的话,这个属性是可以不设置的。另外这个属性和browserName属性是冲突的。

browserName:移动浏览器的名称。比如Safari' for iOS and 'Chrome', 'Chromium', or 'Browser' for Android;与app属性互斥。

udid:物理机的id。比如1ae203187fc012g。

下面这些属性是android平台特定的:

appActivity:待测试的app的Activity名字。比如MainActivity, Settings。注意,原生app的话要在activity前加个""。

appPackage:待测试的app的java package。比如comexampleandroidmyApp, comandroidsettings。

本文主要讨论android平台的appium测试方法和技巧,因此在这里就不列出ios设备特定的属性了。

更多信息请参考 官方文档

在这里我们发现,我们经常要获取app的package和activity名字,那么有什么工具可以让我们方便的获取到这些信息呢?下一节讲回答这个问题。

你把你的代码和下面代码对比对比

#-- coding: UTF-8 --

#导入常用的包

import os

import time

import unittest

from selenium import webdriver

from lib2to3pgen2driverimport Driver

from lib2to3testssupportimport driver

#设置路径信息

PATH=lambda p:ospathabspath(

ospathjoin(ospathdirname(__file__),p)

)

global driver

class LoginAndroidTests(unittestTestCase):

def setUp(self):

#初始化测试平台

desired_caps={}

desired_caps['device'] = 'android'

desired_caps['platformName']='Android' #测试平台

desired_caps['browserName']=''

desired_caps['version']='422'#系统版本

desired_caps['deviceName']='antester'#模拟器名称

desired_caps['app-package']='comsubjectzhongchou'#要测试的app

desired_caps['app-activity']='ZhongChou'#当前活动应用

selfdriver=webdriverRemote('>

 js并不能实现如此的功能。

因为js文件本身就是被加载进来的,所以当js文件未被加载的时候,它是无法对之前加载进来的文件参考代码:

dcap = dict(DesiredCapabilitiesPHANTOMJS)

dcap["phantomjspagesettingsloadImages"] = False # 禁止加载,默认加载

dcap["phantomjspagesettingsresourceTimeout"] = 5000 # 超时时间,单位是 ms

if headers == None:

dcap["phantomjspagesettingsuserAgent"] = toolget_headers()

else:

dcap["phantomjspagesettingsuserAgent"] = headers

driver = webdriverPhantomJS(desired_capabilities=dcap)

driverget(url)

import pprint

pprintpprint(dir(driver))

try:

driverfind_element_by_css_selector('#mod_columns_tab')click()

except:

pass

if sellp_time:

timesleep(sellp_time)

html = driverpage_source

driverclose()

return html

以上就是关于Desired Capabilities详解全部的内容,包括:Desired Capabilities详解、启动python脚本报错,具体如下: 1.启动appium工具 2.启动python脚本,报错、如何获取PhantomJS打开网页时加载的JS资源等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9764552.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存