Selenium Grid允许同时并行地、在不同的环境上运行多个测试任务。这里主要演示一下怎么使用Selenium Grid。

准备:

1、 需要两台机子

2、两台机子分别安装好JDK环境

3、两台机子需要从https://pypi.python.org/pypi/selenium下载selenium-server-standalone-*.jar包

开始:

1、Grid需要一台机子做为主节点,然后其它机子做为子节点连接到这个主节点上来。所以首先要启

动主节点: 选一台机子做为主节点。打开命令行,cd至selenium-server-standalone-*.jar

包的目录下,然后用下面的命令启动主节点服务:

 java -jar selenium-server-standalone-3.141.0.jar -role hub 默认启动默认端口为4444。如果要改这个端口,可以再上面的命令后面加上 -port XXXX。

启动完后,你可以用浏览器打开 http://localhost:4444/grid/console 

【启动完主节点之后,要做的就是启动子节点。】

2、启动子节点: 先另一台机子做为子节点。同样打开命令行,cd至selenium-server-standalone-*.jar包的目录下,然后用下面的命令启动次节点服务: java -jar selenium-server-standalone-3.141.0.jar -role  node  -hub http://192.168.1.180:4444/grid/register ,此命令默认启动5555端口,可使用-port xxxx更改。其中192.168.1.180为主节点机子的ip地址,可以在cmd中输入ipconfig命令在命令行查看得到。

启动完成连接到主节点后,可以在主节点机子上 ,http://localhost:4444/grid/console网址查看到这个子节点状态。

【使用同样的方法,可以链接其它的子节点。】

3、首先,肯定通过Windows命令提示符启动Selenium Server。

 java -jar selenium-server-standalone-3.141.0.jar

4、编写自动化测试脚本,在自己主机上运行测试用例。


例子如下:

通过Selenium Server可以轻松地创建本地节点和远程节点。而Remote的作用就是配置测试用例在这些节点上执行。


第二个例子:在本机打开cmd命令提示符窗口,分别启动一个1个hub和两个node (节点)

java -jar selenium-server-standalone-3.141.0.jar -role hub 默认端口444
java -jar selenium-server-standalone-3.141.0.jar -role node -port 5555
java -jar selenium-server-standalone-3.141.0.jar -role node -port 5557

如图:


启动远程node

我们目前启动的hub和node都是在同一台主机上,要想在其他主机上启动node,则必须满足以下要求。

●本地hub主机与远程node主机之间可以用ping命令连通。

(查看http://www.cnblogs.com/hhddcpp/p/3855496.html)

●远程主机必须安装用例执行的浏览器及驱动,并且驱动要放在已经存放环境变量的目录下。

●远程主机必须安装Java环境,因为需要运行Selenium Server。

2、操作步骤

①启动本地hub主机(本地主机识为:192.168.1.180)。

>java -jar selenium-server-standalone-3.141.0.jar -role hub

②启动远程node主机(操作系统:Mac OS X ,IP地址:192.168.1.181)。

>java -jar selenium-server-standalone-3.141.0.jar -role node –port 5558 -hub 

http:// 192.168.1.180(hubip):4444/grid/register

设置的node端口号为:5558,指向的hub主机IP地址为192.168.1.180

③修改远程主机的IP地址及端口号,在其上面的浏览器运行脚本。

web端自动化——Remote应用的更多相关文章

  1. 接口自动化、移动端、web端自动化如何做?

    1.<Python+Appium移动端自动化项目实战>-带您进入APP自动化测试的世界https://yuedu.baidu.com/ebook/765b38a5690203d8ce2f0 ...

  2. web端自动化——Selenium3+python自动化(3.7版本)-火狐62版本环境搭建

    前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以在学习前先要弄清楚版本号,这点非常重要.本系列依然以selenium3为基础. 一.selenium简介 Sel ...

  3. web端自动化——Selenium3+python自动化(3.7版本)-chrome67环境搭建

    前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以在学习前先要弄清楚版本号,这点非常重要.本系列依然以selenium3为基础. 一.selenium简介 Sel ...

  4. web端自动化——python多线程

    Python通过两个标准库thread和threading提供对线程的支持.thread提供了低级别的.原始的线程以及一个简单的锁.threading基于Java的线程模型设计. 锁(Lock)条件变 ...

  5. web端自动化——Python的smtplib发送电子邮件

    SMTP (Simple Mail Transfer Protocol)是简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. Python的smtplib模块提 ...

  6. web端自动化——自动化测试准备工作

    准备工作# 在开始自己项目的自动化测试之前,我们最好已经完成了下面的准备工作: 1.熟悉待测系统 对项目的待测系统整体功能和业务逻辑有比较清晰的认识. 2.编写系统的自动化测试用例大纲和自动化测试用例 ...

  7. web端自动化——selenium3用法详解

    selenium中文学习文档链接:https://selenium-python-zh.readthedocs.io/en/latest/getting-started.html selenium3+ ...

  8. 低代码开发,推荐一款Web 端自动化神器:Automa

    1. Automa介绍 又到了优秀工具推荐的时候了,今天给大家分享一款前端自动化操作神器: Automa . 首先了解一下Automa是什么? Automa它定位是一款 Chrome 插件,也就意味着 ...

  9. web端自动化——webdriver驱动

    1.1Edge浏览器(不过,Edge浏览器只能运行于 Windows 10) Edge驱动的下载地址,复制链接http://go.microsoft.com/fwlink/?LinkId=619687 ...

随机推荐

  1. learning java AWT 布局管理器CardLayout

    import javax.swing.*; import java.awt.*; import java.awt.event.ActionListener; public class CardLayo ...

  2. 2-使用git管理一个单片机程序

    https://www.cnblogs.com/yangfengwu/p/10842205.html 我用电脑压缩一个文件,然后通过git上传,然后在新买的linux系统通过wget 网络下载这个压缩 ...

  3. Ubuntu下彻底卸载默认安装的mysql,自己手动下载安装MYSQL

    彻底卸载: sudo apt-get autoremove --purge mysql-server-5.7 sudo apt-get remove mysql-common sudo rm -rf ...

  4. 悬线法DP总结

    悬线法DP总结 问题模型 求满足某种条件(如01交替)的最大矩形(正方形) 思想 先预处理出\(ml[i][j],mr[i][j],mt[i][j]\),分别表示当前位置\((i,j)\)能向左扩展到 ...

  5. 机器学习---用python实现最小二乘线性回归算法并用随机梯度下降法求解 (Machine Learning Least Squares Linear Regression Application SGD)

    在<机器学习---线性回归(Machine Learning Linear Regression)>一文中,我们主要介绍了最小二乘线性回归算法以及简单地介绍了梯度下降法.现在,让我们来实践 ...

  6. 区块链阶段1-Linux基础- 1 Linux简介

    对于一般的办公和娱乐我们接触更多的是Windows.但是对于IT从业人员,特别是从事服务器管理以及软件开发的人员来讲,我们需要熟练掌握 Linux/UNIX操作系统的知识.所以,Linux 是众多操作 ...

  7. GO语言strconv包的使用

    Go语言中strconv包实现了基本数据类型和其字符串表示的相互转换. strconv包 strconv包实现了基本数据类型与其字符串表示的转换,官方文档中文版. string与int类型转换 Ato ...

  8. windows命令行操作

    一.打开方式 -  开始菜单  -->  运行 -->  输入cmd -->  回车 二.常用的指令 dir                             - 列出当前目录 ...

  9. arcpy 重分类

    arcpy.gp.Reclassify_sa("dem.tif","Value","0 2000 1;2000 2100 2;2100 2500 3; ...

  10. colormap是MATLAB里面用来设定和获取当前色图的函数。

    下面将举例.描述MATLAB内建的色图.用户除了可以编程指定MATLAB内建的色图,还可以使用Plot Tools图形用具界面的Figure Properties面板中的Colormap菜单来选择一种 ...