grid 操作实例
1.下载selenium server 地址http://www.seleniumhq.org/download
2.这里以2.44.0.jar为例+windows 平台+在一台主机上运行
3.cmd下进入下载的路径, 键入 java -jar selenium-server-standalone-2.44.0.jar -role hub
4.再另起cmd 键入 java -jar selenium-server-standalone-2.44.0.jar -role node -port 5555 同样可以再起 port 为5556
代码:
from selenium.webdriver import Remote
#定义主机和浏览器
lists={'http://127.0.0.1:4444/wd/hub':'chrome',
'http://127.0.0.1:5555/wd/hub':'friefox'}
for host,browser in config.getconfig().items():
print(host)
print(browser)
driver = webdriver.Remote(
command_executor="http://127.0.0.1:4444/wd/hub",
desired_capabilities={'platform':'ANY',
'browserName':browser,
'vwesion':'',
'javascriptEnabled':True
}
)
driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys("remote")
driver.find_element_by_id("su").click()
time.sleep(3)
driver.quit()
5.需要配置各种的驱动
6.下面在不同主机上运行
7.前提:
7.1本地hub必须和远程的node节点可以通信或ping通
7.2远程必须有对应的浏览器和驱动,并且配置驱动环境变量
7.3远程主机必须有java环境
8.步骤:
8.1启动本地hub 本地的ip地址 192.168.15.213
cmd下,切换到selenium server 的下载路径,键入 java -jar selenium-server-standalone-2.44.0.jar -role hub
8.2启动远程主机 如远程的ip地址 192.168.11.669
键入 java -jar selenium-server-standalone-2.44.0.jar -role node -port 5555 -hub http://192.168.15.213:4444/grid/register (设置的端口是5555,指向的是hub主机地址)
8.3修改远程脚本 lists={...
'http://192.168.11.669:5555/wd/hub','firefox',
...
}