Selenium Grid 安装

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需要一台机子做为主节点,然后其它机子做为子节点连接到这个主节点上来。所以首先要启动主节点。
 
 启动主节点:
  选一台机子做为主节点。打开命令行,cd至selenium-server-standalone-*.jar包的目录下,然后用下面的命令启动主节点服务:
  
java -jar selenium-server-standalone-2.24.1.jar -role hub
  默认启动默认端口为4444。如果要改这个端口,可以再上面的命令后面加上 -port XXXX。启动完后,你可以用浏览 器    打开 http://localhost:4444/grid/console 这个网址查看主节点的状态。
  启动完主节点之后,要做的就是启动子节点。
  
启动子节点:
  先另一台机子做为子节点。同样打开命令行,cd至selenium-server-standalone-*.jar包的目录下,然后用下面的命令启动次节点服务:
  java -jar selenium-server-standalone-2.24.1.jar  -role  node  -hubhttp://192.168.4.124:4444/grid/register
  其中192.168.4.124为主节点机子的ip地址,可以使用ipconfig命令在命令行查看得到。上面命令默认启动5555端口,可使用-port 更改。
  启动完成连接到主节点后,可以在主节点机子上 ,http://localhost:4444/grid/console网址查看到这个子节点状态。使用同样的方法,可以链接其它的子节点。
  
运行一个简单的例子:
  上面已经把grid弄成功了,现在我们用Grid来运行一个很简单的例子。代码如下:
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
public class GridTest {
/**
* @throws MalformedURLException
*/
public static void main(String[] args) throws MalformedURLException {
DesiredCapabilities 
test = DesiredCapabilities.firefox();
WebDriver dr = new RemoteWebDriver(new URL(“http://192.168.4.137:5555/wd/hub”),test);
dr.get(“http://www.baidu.com”);
}
}
  在主节点机子上运行上面的代码,你可以在次节点机子上看到firefox浏览器被启动,然后打开了www.baidu.com这个网址。
  
值得注意的是:
  WebDriver dr = new RemoteWebDriver(newURL(“http://192.168.4.137:5555/wd/hub”),test);
  这一句中的192.168.4.137为次节点的ip地址。
Selenium Grid
  Selenium Grid允许同时并行地、在不同的环境上运行多个
测试任务。这里主要演示一下怎么使用Selenium Grid。
 
 准备:
  1、需要两台机子
  2、两台机子分别安装好JDK环境
  3、两台机子需要从 http://code.google.com/p/selenium/downloads/list下载selenium-server-standalone-*.jar包
  
开始:
  Grid需要一台机子做为主节点,然后其它机子做为子节点连接到这个主节点上来。所以首先要启动主节点。
 
 启动主节点:
  选一台机子做为主节点。打开命令行,cd至selenium-server-standalone-*.jar包的目录下,然后用下面的命令启动主节点服务:
  
java -jar selenium-server-standalone-2.24.1.jar -role hub
  默认启动默认端口为4444。如果要改这个端口,可以再上面的命令后面加上 -port XXXX。启动完后,你可以用浏览 器    打开 http://localhost:4444/grid/console 这个网址查看主节点的状态。
  启动完主节点之后,要做的就是启动子节点。
  
启动子节点:
  先另一台机子做为子节点。同样打开命令行,cd至selenium-server-standalone-*.jar包的目录下,然后用下面的命令启动次节点服务:
  java -jar selenium-server-standalone-2.24.1.jar  -role  node  -hubhttp://192.168.4.124:4444/grid/register
  其中192.168.4.124为主节点机子的ip地址,可以使用ipconfig命令在命令行查看得到。上面命令默认启动5555端口,可使用-port 更改。
  启动完成连接到主节点后,可以在主节点机子上 ,http://localhost:4444/grid/console网址查看到这个子节点状态。使用同样的方法,可以链接其它的子节点。
  
运行一个简单的例子:
  上面已经把grid弄成功了,现在我们用Grid来运行一个很简单的例子。代码如下:
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
public class GridTest {
/**
* @throws MalformedURLException
*/
public static void main(String[] args) throws MalformedURLException {
DesiredCapabilities 
test = DesiredCapabilities.firefox();
WebDriver dr = new RemoteWebDriver(new URL(“http://192.168.4.137:5555/wd/hub”),test);
dr.get(“http://www.baidu.com”);
}
}
  在主节点机子上运行上面的代码,你可以在次节点机子上看到firefox浏览器被启动,然后打开了www.baidu.com这个网址。
  
值得注意的是:
  WebDriver dr = new RemoteWebDriver(newURL(“http://192.168.4.137:5555/wd/hub”),test);
  这一句中的192.168.4.137为次节点的ip地址。
最新内容请见作者的GitHub页:http://qaseven.github.io/


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108373.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • python中int是什么类型

    python中int是什么类型python中的基本数据类型1:虽然python中的变量不需要声明,但使用时必须赋值整形变量浮点型变量字符型2:可以一个给多个变量赋值,也可以多个给多个变量赋值3:python3中有6个标准数据类型

    2022年7月5日
  • USB接口定义

    USB接口定义USB接口标准USB是电脑的常见接口,有4根线,两根电源线和两个信号线,电源线正负极供电,接烦可能导致USB设备或电脑的南桥芯片烧坏。typeA即我们常见的标准USB大口,主流的可以分为USB2.0速度(几十M/S)和USB3.0速度(上百M/S),事实上目前有少量Type-A为USB3.110Gbps速度,常见于新的台式机主板上。typeB常见于打印机以及带触摸和U…

    2022年5月30日
  • Pytorch的nn.Conv2d()详解

    Pytorch的nn.Conv2d()详解nn.Conv2d()的使用、形参与隐藏的权重参数in_channelsout_channelskernel_sizestride=1padding=0dilation=1groups=1bias=Truepadding_mode=’zeros’nn.Conv2d()的使用、形参与隐藏的权重参数  二维卷积应该是最常用的卷积方式…

    2022年4月7日
  • java 中 BigDecimal 详解「建议收藏」

    java 中 BigDecimal 详解「建议收藏」首先,学习一个东西,我们都必须要带着问题去学,这边我分为【为什么?】【是什么?】【怎么用?】【为什么要用BigDecimal?】首先,我们先看一下,下面这个现象那为什么会出现这种情况呢?因为不论是float还是double都是浮点数,而计算机是二进制的,浮点数会失去一定的精确度。注:根本原因是:十进制值通常没有完全相同的二进制表示形式;十进制数的二进制表示形式可能不精确…

    2022年5月2日
  • leveldb多线程读写(大数据高并发解决方案)

    在并发写入的时候,leveldb巧妙的利用一个时间窗口做batch写入,这部分代码值得一读:StatusDBImpl::Write(constWriteOptions&options,WriteBatch*my_batch){  //partA  Writerw(&mutex_);  w.batch=my_batch;  w.sync=options.syn…

    2022年4月16日
  • Android Studio Button背景颜色无法修改「建议收藏」

    Android Studio Button背景颜色无法修改「建议收藏」关于AndroidStudioButton背景无法修改,一直呈现亮紫色作为安卓初学者,发现Button的背景颜色无法修改,也没法链接到drawable的样式xml文件,前前后后折腾了好久,查阅了CSDN发现是新版本主题文件的问题,将方法分享给有需要的人原因:由于新版本的主题问题导致解决方法:将app/res/values目录下的themes”<stylename=…”一句代码改成如下内容重启Androidstudio即可<stylename=”Theme.Androi

    2022年6月20日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号