博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Selenium Grid操作使用指南
阅读量:4708 次
发布时间:2019-06-10

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

一、实现串行多浏览器执行脚本

1、启动selenium-server-standalone
java -jar selenium-server-standalone-2.44.0.jar
2、脚本代码

1 from selenium import webdriver 2 from selenium.webdriver.common.desired_capabilities import DesiredCapabilities 3 import time 4  5 lists = ["chrome","firefox"] 6 for i in lists: 7     print(i) 8     driver = webdriver.Remote( 9         command_executor="http://127.0.0.1:4444/wd/hub",10         desired_capabilities={
'platform':'ANY',11 'browserName':i,12 'vwesion':'',13 'javascriptEnabled':True14 }15 )16 driver.get("http://www.baidu.com")17 driver.find_element_by_id("kw").send_keys("hello")18 driver.find_element_by_id("su").click()19 time.sleep(3)20 driver.quit()

二、实现串行多节点(分布式)执行脚本:

1、启动多节点selenium-server-standalone

主节点启动(代码所在主机)
java -jar selenium-server-standalone-2.44.0.jar -role hub
分支节点1启动(北京机房)
java -jar selenium-server-standalone-2.44.0.jar -role node -port 5555
分支节点2启动(上海机房)
java -jar selenium-server-standalone-2.44.0.jar -role node -port 5556
通过浏览器查看启动状态:http://代码所在主机/grid/console

如下显示启动成功

配置文件代码:

1 def getconfig():2     d = {
"http://192.168.109.1:5555/wd/hub":"chrome",3 "http://192.168.109.1:5556/wd/hub":"firefox"}4 return d

实现代码:

1 from selenium import webdriver 2 from selenium.webdriver.common.desired_capabilities import DesiredCapabilities 3 import time 4 import config 5  6 for host,browser in config.getconfig().items(): 7     print(host) 8     print(browser) 9     driver = webdriver.Remote(10         command_executor="http://127.0.0.1:4444/wd/hub",11         desired_capabilities={
'platform':'ANY',12 'browserName':browser,13 'vwesion':'',14 'javascriptEnabled':True15 }16 )17 driver.get("http://www.baidu.com")18 driver.find_element_by_id("kw").send_keys("hello")19 driver.find_element_by_id("su").click()20 time.sleep(3)21 driver.quit()

 总结:

Selenium Grid并不能实现并行执行脚本,如果想并行执行需要和多线程进行结合。

转载于:https://www.cnblogs.com/hanxiaobei/p/7352794.html

你可能感兴趣的文章
查看手机已经记住的WIFI密码
查看>>
最新版IntelliJ IDEA2019 破解教程(2019.08.07-情人节更新)
查看>>
C# 两个datatable中的数据快速比较返回交集或差集
查看>>
关于oracle样例数据库emp、dept、salgrade的mysql脚本复杂查询分析
查看>>
adb shell am 的用法
查看>>
iOS10 UI教程视图和子视图的可见性
查看>>
FindChildControl与FindComponent
查看>>
中国城市json
查看>>
android下载手动下载Android SDK
查看>>
C++学习:任意合法状态下汉诺塔的移动(原创)
查看>>
leetcode133 - Clone Graph - medium
查看>>
UNET学习笔记2 - 高级API(HLAPI)
查看>>
"ORA-00942: 表或视图不存在 "的原因和解决方法[转]
查看>>
Oauth支持的5类 grant_type 及说明
查看>>
C#中用DateTime的ParseExact方法解析日期时间(excel中使用系统默认的日期格式)
查看>>
W3100SM-S 短信猫代码发送 上
查看>>
netty接收大文件的方法
查看>>
软件工程设计之四则运算
查看>>
SpringMVC @ResponseBody 406
查看>>
Partial Tree UVALive - 7190(完全背包)
查看>>