部署Selenium Grid + Selenium RC + Webdriver

Grid Hub:Ubuntu12.10_x64(自动化脚本所在的机器,也是selenium server所在的机器)

  Selenium RC:Windows 7_x32(接收hub的命令并启动浏览器运行测试脚本的机器,称为节点)

  1、Hub需要安装的软件及包:Python2.7.3+Selenium2+Java1.7.0_25+selenium-server-2.39.0.jar+chromedriver_linux64.zip

  2、RC需要的软件及包:Java1.7.0_25+selenium-server-standalone-2.39.0.jar+Firefox+Chrome28+IEDriverServer_Win32_2.39.0.zip+chromedriver_win32_13.0.775.0

  3、Grid Hub安装步骤

  Python(Ubuntu自带了,无需额外安装)

  安装setuptools

  下载路径:http://pypi.python.org/pypi/setuptools

  安装:sudo python  easy_install.py install

  安装pip

  下载 pip-1.4.1.tar.gz

  安装:sudo python setup.py install

  在线安装selenium

  pip install selenium

  Java(Ubuntu自带了,无需额外安装)

  下载selenium-server-2.39.0.jar

  解压selenium-server-2.39.0.zip,在selenium-server-2.39.0目录下找到 selenium-server-standalone-2.39.0.jar

  下载chromedriver_linux64.zip。解压得到chromedriver,用root用户将chromedriver复制到/usr/bin目录

  进入selenium-server-standalone所在的目录

  在终端输入java -jar selenium-server-standalone-2.39.0.jar -role hub启动Grib Hub

  浏览器端可打开http://localhost:4444/grid/console页面

  终端显示如下:


irene@shuixian:~/Downloads/selenium-2.39.0$ java -jar selenium-server-standalone-2.39.0.jar -role hubDec 24, 2013 6:28:00 PM org.openqa.grid.selenium.GridLauncher main

INFO: Launching a selenium grid server

2013-12-24 18:28:01.513:INFO:osjs.Server:jetty-7.x.y-SNAPSHOT

2013-12-24 18:28:01.564:INFO:osjsh.ContextHandler:started o.s.j.s.ServletContextHandler{/,null}

2013-12-24 18:28:01.571:INFO:osjs.AbstractConnector:Started SocketConnector@0.0.0.0:4444

  4、Selenium RC安装步骤(Windows 7)

  下载安装JAVA

  下载selenium-server-standalone-2.39.0.jar,同上

  下载并安装Firefox

  下载并安装Chrome,版本33会有错,可下载28这个版本

  下载IEDriverServer.exe,解压包并将IEDriverServer.exe复制到IE的安装目录下如:C:\Program Files\internet Explorer

  把C:\Program Files\internet Explorer增加到机器的环境变量PATH中,即编辑PATH,在后面加上;C:\Program Files\internet Explorer

  下载chromedriver_win32_13.0.775.0.zip,解压得到chromedriver.exe,将chromedriver.exe放在chrome的安装目录如:C:\Users\irene\AppData\Local\Google\Chrome\Application。

把C:\Users\irene\AppData\Local\Google\Chrome\Application追加到机器的环境变量PATH中

  将Selenium RC注册到Grib Hub中,并指定浏览器为IE

java -jar selenium-server-standalone-2.39.0.jar -role node -hub http://192.168.88.183:4444/register -browser browserName="internet explorer" naxInstance=1,platform=WINDOWS

  将Selenium RC注册到Grib Hub中,并指定浏览器为Firefox

java -jar selenium-server-standalone-2.39.0.jar -role node -hub http://192.168.88.183:4444/register -browser browserName="firefox" naxInstance=1,platform=WINDOWS

  将Selenium RC注册到Grib Hub中,并指定浏览器为Chrome

java -jar selenium-server-standalone-2.39.0.jar -role node -hub http://192.168.88.183:4444/register -browser browserName="chrome" naxInstance=1,platform=WINDOWS

  5、Selenium RC的启动(与Grid Hub在同台机器)

  将Selenium RC注册到Grib Hub中,并指定浏览器为Firefox

java -jar selenium-server-standalone-2.39.0.jar -role node -hub http://localhost:4444/register -browser browserName="firefox" naxInstance=1,platform=LINUX

  将Selenium RC注册到Grib Hub中,并指定浏览器为Chrome

java -jar selenium-server-standalone-2.39.0.jar -role node -hub http://localhost:4444/register -browser browserName="chrome" naxInstance=1,platform=LINUX

  6、示例脚本


from selenium import webdriver

from selenium.webdriver.remote.command import Command

from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

browser = webdriver.Remote('http://192.168.88.183:4444/wd/hub', DesiredCapabilities.FIREFOX)

browser.get("http://www.baidu.com")

browser.find_element_by_name("wd").send_keys("scutech")

browser.find_element_by_id("su").click()

browser.quit()

  7、注意:运行脚本前Selenium Grid 和Selenium RC都要启动。Hub只有一个,RC可以有多个。

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-10-04 15:25:28

部署Selenium Grid + Selenium RC + Webdriver的相关文章

使用Selenium Grid改进Web应用程序的测试

通过真实的测试项目和代码示例,学习如何在多个环境中并行地执行测试和加快 Web 应用程序的测试速度. Selenium Remote Control (RC) 是 Selenium 项目工具套件的一个部分,它是一个自动化的 Web 应用程序测试框架.Selenium RC 支持许多的编程语言和几乎所有的浏览器.Selenium RC 最重要的优势是浏览器的驱动方法.与其他 Web UI 自动化工具不同,Selenium RC 是通过 http://www.aliyun.com/zixun/agg

Docker与Web自动化测试:一键创建Selenium Grid集群

Docker的容器技术的优秀特性,例如秒级启动.应用隔离.良好的可移植性等,可以在DevOps中大显身手,并推动持续集成,持续交付等理念落地.今天我们就将结合Selenium Grid来介绍Docker在自动化测试中的使用场景. Selenium Grid 简介 Selenium 是针对Web应用的自动化测试框架和工具集合,支持多种浏览器和编程语言.Selenium的测试用例直接运行在浏览器中,并模拟用户的操作. Selenium Grid是一个分布式Web测试工具,可以将测试透明地分发到多个主

Selenium Grid深入学习

应网友要求写一个用Selenium Grid控制多系统多浏览器并行执行test case的例子. 因为我这里有两台机子,我打算这样演示: 一台机子启动一个作为主点节的hub 和 一个作为次节点的hub(系统windows 浏览器为ie) ip为:192.168.40.24 另一台机子启动两个次节点hub,一个次节点浏览器为firefox,另一个浏览器为chrome (系统为windows),ip为:192.168.40.67 启动各节点hub 启动主节点hub命令: java -jar sele

Selenium Grid 安装

Selenium Grid Selenium Grid允许同时并行地.在不同的环境上运行多个测试任务.这里主要演示一下怎么使用Selenium Grid. 准备: 1.需要两台机子 2.两台机子分别安装好JDK环境 3.两台机子需要从 http://code.google.com/p/selenium/downloads/list下载selenium-server-standalone-*.jar包 开始: Grid需要一台机子做为主节点,然后其它机子做为子节点连接到这个主节点上来.所以首先要启

安装并引用Selenium 2—Selenium自动化测试指南(1)

(51Testing软件测试网获人民邮电出版社和作者授权连载本书部分章节.任何个人或单位未获得明确的书面许可,不得对本文内容复制.转载或进行镜像,否则将追究法律责任.) 第5章 Selenium 2(WebDriver) Selenium 2(即WebDriver)是一种用于Web应用程序的自动测试工具,它提供了一套友好的API,与Selenium 1(Selenium-RC)相比,Selenium 2的API更容易理解和使用,其可读性和可维护性也大大提高.Selenium 2完全就是一套类库,

Selenium grid 使用方法

代码和selenium driver相同 只是 启动环境方式不同.至少启动一个hub 一个 node .如需要多个,可以使用端口进行区分. java -jar selenium-server-standalone-x.xx.x.jar -role node -port 5555 java -jar selenium-server-standalone-x.xx.x.jar -role node -port 5556 java -jar selenium-server-standalone-x.x

用Selenium WebDriver+Grid2实现浏览器端性能测试

在 Web 2.0 应用中,页面装载时间和浏览器渲染时间将成为决定性能的关键因素.我们在测试过程中不仅需要手动触发性能测试工具,而且需要模仿不同的用户行为,包括不同的浏览器.不同的网络条件和不同的使用习惯.在这种情况下我们需要新的方法与工具来覆盖特别是浏览器端的性能测试.用 Selenium WebDriver + Grid2 可以解决浏览器端性能测试中的自动化和并发性问题.本文介绍了这种新的测试框架和脚本的开发过程,并结合案例给出了具体的代码和结果分析.使用 Selenium WebDrive

Selenium与Webdriver的对比

追踪溯源,WebDriver 和 Selenium 本是两个独立的项目,实现机制也是不同的.那 Selenium 团队为什么会在 Selenium 2 中将两者合并,这究竟有什么用意呢?WebDriver 比 Selenium 又有什么优势呢?我们该如何选择使用 Selenium 还是 WebDriver 呢?别着急,您将在本文中找到答案,并将了解一些 WebDriver 的基本知识和使用方法. 为方便表述,在本文中,我们称 Selenium 2 为 WebDirver,Selenium 为 S

基于Selenium WebDriver实现多语言环境下自动化截图

TVT 的概念和 TVT 自动化的必要性 概念 翻译验证测试 (Translation Verification Testing,TVT) 是 IBM GSSC 部门为 IBM 的各种产品做本地化 (Localization) 的一个测试环节.众所周知,我们开发出一款产品,需要让全 球各地的用户都能够无障碍的使用,就必须精准的将产品 UI 和相关文档翻译成各种语言,这样不同国家和地区的用户才能 够顺畅使用.TVT 的过程就是一个产品翻译验证测试的过程. 必要性 从字面上看,TVT 是一个比较简单