关闭

Selenium分布式运行:SeleniumGrid

发表于:2024-3-29 09:34

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:佚名    来源:CSDN

  简介:Selenium Grid是selenium的三大组件之一,它允许Selenium-RC针对规模庞大的测试案例集或者需要在不同环境中运行的测试案例集进行扩展。通过将客户端命令发送到远程浏览器的实例, Selenium Grid 允许在远程计算机 (虚拟或真实) 上执行WebDriver脚本. 它旨在提供一种在多台计算机上并行运行测试的简便方法。Selenium Grid允许我们在多台计算机上并行运行测试, 并集中管理不同的浏览器版本和浏览器配置 (而不是在每个独立的测试中)。
  官方文档:
  https://www.selenium.dev/zh-cn/
  selenium-grid文档:
  https://www.selenium.dev/zh-cn/documentation/grid/
  selenium-grid优势:
  1、为所有的测试提供统一的入口
  2、管理和控制运行着浏览器的节点/环境
  3、扩展
  4、并行测试,减少执行时间
  5、跨平台(操作系统)测试
  6、负载测试
  环境安装准备:
  1、控制机和执行机,hub和node节点电脑互相能ping通。
  2、执行机node节点需要配置对应浏览器驱动。
  3、python:推荐3.7+,如3.8.0,验证Python环境安装结果 python
  4、java环境:自行百度,验证Java环境安装结果 java -version
  5、selenium-server下载地址
  https://github.com/SeleniumHQ/selenium/releases/tag/selenium-3.141.59
  启动hub:
  java -jar selenium-server-standalone-3.141.59.jar -role hub -port 4444
  参数说明:
  1、selenium-server-standalone.jar不在当前目录,需要添加路径。
  2、-port 4444,hub默认4444端口
  3、可以把启动命令写在.bat批处理里,方便执行
  附:启动hub的bat的脚本
  @echo off
  :: 进入对应盘符和selenium-server在的路径
  C:
  cd C:\magic\webUI  
  java -jar selenium-server-standalone-3.141.59.jar -role hub -port 4444
  pause
  node节点启动:
  java -jar selenium-server-standalone-3.141.59.jar -role node -port 5555 -hub http://hub_ip:4444/grid/register
  节点启动完成后,hub的状态:
  检查selenium Hub的状态:
  http://localhost:4444/grid/console
  源码:
  # 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.get("http://www.baidu.com")
  print(driver.title)
  driver.quit()
  控制机代码执行效果:
  控制机selenium-grid状态:
  node执行机启动浏览器并打开百度:
  自此,Selenium分布式运行安装配置完毕。
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号