selenium grid 搭建

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()
时间: 2024-12-30 08:42:14

selenium grid 搭建的相关文章

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

当自动化测试需要考虑到兼容性的时候,之前的做法是每个执行机上安装不同版本的浏览器,实际上这样做会很浪费资源,现在有了docker容器化技术,让一切变得简单 1.首先安装一台Ubuntu系统的服务器,可以在workstations里面创建一个虚拟机 2.虚拟机创建好了之后使用xshell连接, 2.1 安装docker 2.2 获取镜像 docker pull selenium/hub docker pull selenium/node-firefox-debug docker pull sele

Selenium Grid搭建

添加hub java -jar selenium-server-standalone-2.47.1.jar -role hub 添加node java -jar selenium-server-standalone-2.47.1.jar -role node http://192.168.199.112:4444/grid/register 参考链接: http://simeonvisser.com/posts/running-tests-in-python-with-selenium-2-an

Selenium grid 分布式测试搭建

应领导要求使用 selenium grid 搭建分布式测试平台,于是有了以下操作: 第一步:准备2台电脑,且2台电脑都安装好jdk,都准备好selenium-server-standalone-2.40.0.jar,IEDriver, ChromeDriver等工具,注意chrome版本与chromedriver需要匹配,详见我的另一篇博客:http://www.cnblogs.com/cherrysu/p/7815245.html 第二步:其中一台电脑作为hub,也就是老大,另一台作为node

selenium Grid使用

1.1 Selenium Grid简介 Selenium Grid组件专门用于远程分布式测试或并发测试,通过并发执行测试用例的方式可以提高测试用例的执行速度和效率,解决界面自动化测试执行速度过慢的问题. Selenium Grid使用Hub和Node模式,一天计算机作为Hub(管理中心)管理其他多个Node(节点)计算机,Hub负责将测试用例分发给多个Node机执行,并收集多台Node机执行结果的报告,汇总后提交一份总的测试报告,如图: Hub: l  在分布式测试模式中,只能存在一个Hub节点

Python + Selenium 环境搭建

Python + Selenium 环境搭建 注:本文是根据网上资料收集验证整理而得,仅供学习 准备如下: 1.下载 python http://python.org/getit/ 2.下载 setuptools http://pypi.python.org/pypi/setuptools 3.下载 pip https://pypi.python.org/pypi/pip setuptools 是 python 的基础包工具,可以帮助我们轻松的下载,构建,安装,升级,卸载 python的软件包.

Selenium Grid Configuration

作者: Max.Bai 时间: 2014/06 1. Start Selenium Hub java -jar selenium-server-standalone-2.<last_version>.jar-role hub Can be check the hub status use http://127.0.0.1:4444/grid/console 2. Start Selenium Node Start with Node contains Selenium RC and Webdr

Robot Framework + Selenium2Library环境下,结合Selenium Grid实施分布式自动化测试

最近一段时间,公司在推行自动化测试流程,本人有幸参与了自定义通用控件的关键字封装和脚本辅助编写.数据驱动管理.测试用例执行管理等一系列工具软件的研发工作,积累了一些经验,在此与大家做一下分享,也算是做一个总结吧,希望能给大家带来启发和帮助.由于业界没有成熟的解决方案可供参考,本人在研究过程中也是摸着石头过河,纰漏之处在所难免,如果大家有更好的方案,敬请不吝赐教. 分布式并行执行用例需求背景 公司的产品属于web app,采用的是Robot Framework + Selenium2Library

.NET自动化测试工具:Selenium Grid

在生产环境,QA会同时跑几十个上百个的test case.如果用单机串行的话,是一件非常耗时的事情,估计比手点快不了多少.使用并行方案的话,有两种方法,一个是自己写并行框架,一个是用现成的Selenium Grid. 自己写并行框架,好处是一切尽在掌控,有问题可以快速定位,针对业务的定制化程度高,用户用起来方便.目前想到的问题是,如果在单机多账户登录同一系统的情况下,会不会串cookie?不过我发现,可能是浏览器厂商把不同的Driver实例给隔离了,这样就省很多事.实现思路大体是:各Client

Selenium Grid操作使用指南

一.实现串行多浏览器执行脚本1.启动selenium-server-standalonejava -jar selenium-server-standalone-2.44.0.jar2.脚本代码 1 from selenium import webdriver 2 from selenium.webdriver.common.desired_capabilities import DesiredCapabilities 3 import time 4 5 lists = ["chrome&quo