博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
selenium grid应用1-多浏览器执行用例
阅读量:6608 次
发布时间:2019-06-24

本文共 2472 字,大约阅读时间需要 8 分钟。

driver =webdriver.Remote(

command_executor=’http://127.0.0.1:4444/wd/hub’,

desired_capabilities=DesiredCapabilities.CHROME)

’http://127.0.0.1:4444/wd/hub’可以看作一个字符串,对其进行参数化没有什么困难。

那么 DesiredCapabilities.CHROME 里面包含了什么东西呢?

>>> fromselenium.webdriver.common.desired_capabilitiesimport DesiredCapabilities

>>> p=DesiredCapabilities.CHROME
>>> printp
{'platform': 'ANY', 'browserName': 'chrome', 'version': '', 'javascriptEnabled':True}

我们将 DesiredCapabilities.CHROME 的内容打印输出,发现其本身是一个字典。

'platform':'ANY' 平台默认可以是任何(window,MAC,android)。
'browserName':'chrome' 浏览器名字是 chrome 。
'version':'' 浏览器的版本默认为空。
'javascriptEnabled':True javascript 启动状态为 True

pythonwebdriverAPI 提供了不同平台及浏览器的参数:

ANDROID = {'platform': 'ANDROID', 'browserName': 'android', 'version': '', 'javascriptEnabled': True}

CHROME = {'platform': 'ANY', 'browserName': 'chrome', 'version': '', 'javascriptEnabled': True}

FIREFOX = {'platform': 'ANY', 'browserName': 'firefox', 'version': '', 'javascriptEnabled': True}

HTMLUNIT = {'platform': 'ANY', 'browserName': 'htmlunit', 'version': ''}

HTMLUNITWITHJS = {'platform': 'ANY', 'browserName': 'htmlunit', 'version': 'firefox', 'javascriptEnabled': True}

INTERNETEXPLORER = {'platform': 'WINDOWS', 'browserName': 'internet explorer', 'version': '', 'javascriptEnabled': True}

IPAD = {'platform': 'MAC', 'browserName': 'iPad', 'version': '', 'javascriptEnabled': True}

IPHONE = {'platform': 'MAC', 'browserName': 'iPhone', 'version': '', 'javascriptEnabled': True}

SAFARI = {'platform': 'ANY', 'browserName': 'safari', 'version': '', 'javascriptEnabled': True}

PHANTOMJS = {'platform': 'ANY', 'browserName': 'phantomjs', 'version': '', 'javascriptEnabled': True}

OPERA = {'platform': 'ANY', 'browserName': 'opera', 'version': '', 'javascriptEnabled': True}

我们现在要做的是对 browserName 参数进行参数化,传入不同的浏览器,使脚本在不同的浏览器下运 行。要想运行脚本之前我们需要先启动 seleniumserver:

#coding=utf-8

import time from selenium

import webdriver fromselenium.webdriver.common.desired_capabilities import DesiredCapabilities

#浏览器数组

lists=['chrome','internet explorer']

#通过不同的浏览器执行脚本

for browser in lists:

  print browser

  driver = webdriver.Remote(

                       command_executor='http://127.0.0.1:5555/wd/hub',

                       desired_capabilities={'platform': 'ANY', 'browserName':browser, 'version': '', 'javascriptEnabled': True })

   driver.get("http://www.youdao.com")

   driver.find_element_by_name("q").send_keys("hello")

   driver.find_element_by_id("qb").click()

   time.sleep(2)

   driver.close()

 

转载于:https://www.cnblogs.com/wensiyang0916/p/5775731.html

你可能感兴趣的文章
几种排序方式的java实现(01:插入排序,冒泡排序,选择排序,快速排序)
查看>>
图片存储类型的种类、特点、区别
查看>>
GETTING UP AND RUNNING WITH NODE.JS, EXPRESS, JADE, AND MONGODB
查看>>
MySQLs数据库建外键时自动跑到缩影处,真奇怪
查看>>
static关键字
查看>>
js 合并多个对象 Object.assign
查看>>
Java 反射机制
查看>>
temporary Object and destructor
查看>>
xcode - 移动手势
查看>>
细说浏览器特性检测(1)-jQuery1.4添加部分
查看>>
古中国数学家的计算力真是惊人
查看>>
Java基础-算术运算符(Arithmetic Operators)
查看>>
C#编程(四十七)----------集合接口和类型
查看>>
【转】关于大型网站技术演进的思考(十二)--网站静态化处理—缓存(4)
查看>>
积跬步,聚小流------Bootstrap学习记录(1)
查看>>
HDUPhysical Examination(贪心)
查看>>
C++中public、protected及private用法
查看>>
苹果公司的产品已用完后门与微软垄断,要检查起来,打架!
查看>>
顶级的JavaScript框架、库、工具及其使用
查看>>
AYUI -AYUI风格的 超美 百度网盘8.0
查看>>