selenium grid 环境搭建

 

1、selenium grid简介javascript

        selenium grid能够同时在不一样机器上测试不一样浏览器,包含一个hub和多个node。node会发送配置信息到hub,hub记录并跟踪每个node的配置信息,同时hub会接受到即将被执行的测试用例及其相关信息,并经过这些信息自动选择可用的且符合浏览器与平台搭配要求的node,node被选中后,测试用例所调用的selenium命令就会被发送到hub,hub再将这些命令发送到指定给该测试用例的node,以后由node执行测试。html

图 1. Selenium Grid2 的机制

2、环境准备java

一、node

 A、在不一样的测试集群机上,分别安装不一样类型的浏览器和相应的驱动。并配置好环境变量(将浏览器驱动driver配置进PATH变量中)。python

 B、安装java的jre环境并配置环境变量。linux

二、selenium-server-standalone-XX.XX.jar 下载web

在https://selenium-release.storage.googleapis.com/index.html找到适配的版本并将其放到pc的某一个目录下;chrome

三、进入放置selenium-server-standalone-XX.XX.jar的目录,启动Hub(192.168.0.41):windows

(无论是要使用WebDriver功能的网格仍是RC功能的网格仍是同事使用二者,都是使用selenium-server-standalone 的jar文件来启动节点。命令以下:)api

java -jar selenium-server-standalone-3.10.0.jar -role hub

在pc1的浏览器内打开:http://192.168.0.41:4444/grid/console  能够查看Hub状态。也就是说Grid默认启动端口是4444,若是想切换为其余端口,则加-port参数。好比要切换为8888:

java -jar selenium-server-standalone-3.10.0.jar -role hub  -port 8888

四、进入放置selenium-server-standalone-XX.XX.jar的目录,启动Node(192.168.0.42):

java -jar selenium-server-standalone-2.27.0.jar -role node -hub http://192.168.0.41/grid/register

一样的,也可使用-port切换node端口,默认端口是5555. 
此处的node节点,也能够做为一个单机的远程节点存在,并同时支持RC,WebDriver。浏览器输入http://192.168.0.42/wd/hub能够看到session信息。

而后,一样的启动其它ip的Node节点。

打开浏览器:http://192.168.0.41:4444/grid/console ,能够看到注册的节点、

五、

4、环境测试

编写python脚本:

# coding=utf-8
from selenium import webdriver
import os

chrome_driver = os.path.abspath(r"C:\software\chromedriver")
os.environ["webdriver.chrome.driver"] = chrome_driver
chrome_capabilities = {
"browserName": "chrome", # 浏览器名称
"version": "", # 操做系统版本
"platform": "ANY", # 平台,这里能够是windows、linux、andriod等等
"javascriptEnabled": True, # 是否启用js
"webdriver.chrome.driver": chrome_driver
}
driver = webdriver.Remote("http://node_ip:5555/wd/hub", desired_capabilities=chrome_capabilities)
# driver.set_window_size(1280,720)
driver.get("http://www.baidu.com")
print(driver.title)
driver.quit()

node_ip  须要修改为本身的node ip地址;

成功运行结果以下图:

node端日志:

相关文章
相关标签/搜索