hub端

Step1: 下载 selenium-server-standalone-x.xx.x.jar
我下载的是:selenium-server-standalone-2.44.0.jar
下载地址: http://selenium-release.storage.googleapis.com/index.html

Step2: 新建 hub.bat
内容: java -jar selenium-server-standalone-x.xx.x.jar -role hub
我的是: java -jar selenium-server-standalone-2.44.0.jar -role hub

Step3: 启动hub
双击 hub.bat,即可启动hub。
备注: selenium-server-standalone-x.xx.x.jar 必须和 hub.bat在一个路径下。

node端

Step1: 下载 selenium-server-standalone-x.xx.x.jar
我下载的是:selenium-server-standalone-2.44.0.jar
下载地址: http://selenium-release.storage.googleapis.com/index.html

Step2: 下载浏览器driver

如果测试环境是IE浏览器,下载IEDriverServer.exe

下载地址: http://selenium-release.storage.googleapis.com/index.html

如果测试环境是Chrome浏览器,就下载chromedriver.exe
下载地址: http://chromedriver.storage.googleapis.com/index.html

如果测试环境是Firefox浏览器,就直接安装Firefox即可,但是要记住安装路径,后边要配置。

Step3: 新建defaultNode.json

内容如下:

{
"capabilities":
[
{
"browserName": "firefox",
"maxInstances": 5,
"seleniumProtocol": "WebDriver"
},
{
"browserName": "chrome",
"maxInstances": 5,
"seleniumProtocol": "WebDriver"
},
{
"platform": "WINDOWS",
"browserName": "internet explorer",
"maxInstances": 5,
"seleniumProtocol": "WebDriver"
}
],
"configuration":
{
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"maxSession": 5,
#node启动的端口以及IP地址
"port": 5555,
"host": 127.0.0.1,
"register": true,
"registerCycle": 5000,
#hub启动的端口以及IP地址
"hubPort": 4444,
"hubHost": 127.0.0.1
}
}

Step4: 新建node.bat

如果节点想启动IE: java -jar selenium-server-standalone-x.xx.x.jar -role webdriver -nodeConfig defaultNode.json -Dwebdriver.ie.driver=.\IEDriverServer.exe

.\IEDriverServer.exe 为IE driver的放置路径,我的node.bat和IE driver在一个文件夹,所以是.\IEDriverServer.exe。

如果节点想启动Chrome:java -jar selenium-server-standalone-x.xx.x.jar -role webdriver -nodeConfig defaultNode.json  -Dwebdriver.chrome.driver=.\chromedriver.exe

.\chromedriver.exe为chrome driver的放置路径,我的node.bat和chrome driver在一个文件夹,所以是.\chromedriver.exe。

如果节点想启动Firefox: java -jar selenium-server-standalone-x.xx.x.jar -role webdriver -nodeConfig defaultNode.json -Dwebdriver.firefox.bin="E:\\firefox\\firefox.exe"

"E:\\firefox\\firefox.exe"为Firefox的安装路径。

Step5:启动node双击 node.bat,即可启动node。

备注: 上面所有的文件都必须在一个路径下。
一台测试机上可以启动多个代理,前提是要保证不使用相同的端口即可。(不稳定、不建议)

终端查看

在hub机器的浏览器上打开页面: http://localhost:4444/grid/console#
即可查看所有连接到本hub的机器信息。

代码

#encoding:utf-8
"""Hello World""" from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
import time #IE browser
driver=webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub',desired_capabilities=DesiredCapabilities.INTERNETEXPLORER)
#chrome browser
# driver=webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub',desired_capabilities=DesiredCapabilities.CHROME)
# Firefox browser
# driver=webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub',desired_capabilities=DesiredCapabilities.FIREFOX) driver.get("http://www.baidu.com")
time.sleep(3)
print driver.title
assert "百度一下" in driver.title elem=driver.find_element_by_id("kw")
elem.send_keys("selenium")
driver.find_element_by_id("su").click()
time.sleep(3)
print driver.title
assert "selenium" in driver.title driver.close()

selenium grid 搭建的更多相关文章

  1. [Selenium Grid] 搭建Hub和Node环境

    Note : 先在Hub和Node的机器上安装好JDK,  IE浏览器,Chrome浏览器,Firefox浏览器 准备好红色框标示的东西: Hub.bat :启动Hub AllNodes.bat  : ...

  2. docker+selenium Grid搭建自动化分布式测试环境

    自动化测试需要考虑到兼容性的时候,之前的做法是每个执行机上安装不同版本的浏览器,实际上这样做会很浪费硬件资源,现在有了docker容器化技术,让一切变得简单. 工具清单: 语言:python 2.7 ...

  3. 搭建selenium grid简单配置

    1.使用selenium提供的服务端独立jar包 :服务端.客户端都是运行于java7环境. 2.启动hub: hub配置文件如下: Java -jar selenium-server-standal ...

  4. Selenium Grid分布式测试环境搭建

    Selenium Grid简介 Selenium Grid实际上是基于Selenium RC的,而所谓的分布式结构就是由一个hub节点和若干个node代理节点组成.Hub用来管理各个代理节点的注册信息 ...

  5. 用docker搭建selenium grid分布式环境实践之路

    最近需要测试zoom视频会议,同时模拟100个人加入会议.经过了解,zoom提供了直接通过url链接加入会议的方式(只能通过chrome浏览器或者FireFox浏览器,因为用的协议是webrtc). ...

  6. 使用docker搭建selenium grid 分布式环境

    本文章只做docker搭建selenium grid 分布式环境步骤说明,对于selenium grid中的参数.流程.原理等不做说明.selenium grid的详细情况可查看官方文档https:/ ...

  7. selenium grid 环境搭建

    一.selenium grid简介 selenium grid可以同时在不同机器上测试不同浏览器,包含一个hub和多个node.node会发送配置信息到hub,hub记录并跟踪每一个node的配置信息 ...

  8. 快速搞定selenium grid分布式

    写这篇文章,似乎有点重复造轮子的嫌疑.当看了几篇相关文章后,我还是决定把半年前的半成品给完成了. 以传统的方式部署分布式Selenium Grid集群需要耗费大量时间和机器成本来准备测试环境. Sna ...

  9. web端自动化——Selenium Grid原理

     利用Selenium Grid可以在不同的主机上建立主节点(hub)和分支节点(node),可以使主节点上的测试用例在不同的分支节点上运行.  对不同的节点来说,可以搭建不同的测试环境(操作系统.浏 ...

随机推荐

  1. HBuilder+移动APP开发实例

    mui: 官网:http://dcloudio.github.io/mui/ 说明:一般要把官网内容通读一遍,这是开发的基础 开始 1.新建项目 在首页点击新建移动App,如下: 或者在项目管理器内右 ...

  2. C# 如何创建接口以及使用接口的简单Demo(转载!)

    //No:1  首先,我们要封装一个接口,接口中不要实现具体的方法(说白了这就是一个架子而已!) using System;using System.Collections.Generic;using ...

  3. 浅谈angular框架

    最近新接触了一个js框架angular,这个框架有着诸多特性,最为核心的是:MVVM.模块化.自动化双向数据绑定.语义化标签.依赖注入,以上这些全部都是属于angular特性,虽然说它的功能十分的强大 ...

  4. thinksns消息提示的实现机制(转)

    转自:http://jingyan.baidu.com/article/f25ef2541718eb482c1b8215.html thinksns的消息提示不是实时的,而是1分钟向服务器请求一次,再 ...

  5. 微博输入相关js 代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. python 图片压缩存储

    python(PIL)图像处理(等比例压缩.裁剪压缩) 缩略(水印)图 http://outofmemory.cn/code-snippet/12264/python-PIL-image-proces ...

  7. Python自动化运维之22、JavaScript

    一.简介 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理.学习了htm ...

  8. Day11 线程、进程、协程

    创建线程第一种:import threadingdef f1(arg): print(arg) t = threading.Thread(target=f1, args=(123,))#t.start ...

  9. github的访问变慢了

    以下个人观点:把操作系统的自主研究还有处理器自主研究列入重点,还有互联网上的种种动作,我发现里面似乎揭示了某些迹象,科研真的不应该以牺牲大部分人的河法全益为代价甚至目的.当某一天win不可能出现在出厂 ...

  10. Egret 双端接入爱贝支付遇到的问题

    首先要为 egret 工程引入第三方库: Egret 接第三方库:http://edn.egret.com/cn/index.php?g=&m=article&a=index& ...