首页 > 其他 > 详细

Selenium分布式自动化测试平台 Standalone Server 4.0 搭建

时间:2019-04-29 14:28:51      阅读:635      评论:0      收藏:0      [点我收藏+]

最新的selenium测试平台大概有这么几个组件

Selenium Standalone Server: 用来搭建远程测试平台以及分布式测试。

Selenium WebDriver: 最基础的用来创建测试脚本以及用来和上面的server进行交互的客户端的驱动。这个针对不同的开发语言有不同的版本,比如java的,python的,还有C#, Ruby, JavaScript。这个也是Selenium和其他测试工具比比较强大的地方。客户端的脚本你可以选择任一喜欢的语言进行实现,同一个server端都可以执行。

Selenium IDE:录制的plugin,没啥说的,针对不同的浏览器有不同的plugin.可以录制回放,编辑,等等,功能相对webdriver比较弱。值得说的是Selenium IDE也有导出功能,最新版本3.6.0的Firefox上,目前只支持导出Java代码,后续会有其他的代码吧,比较鸡肋,估计支持比较晚。

ThirdParty Driver:这个是用来连接webdriver脚本和浏览器的。比如Firefox上的是Gecko.作用是提供webdriver的HTTP API用于和浏览器通信。最直接的作用就是没有它,你就无法启动浏览器,更别说其他功能。相当于是用来执行webdriver上的API操作到浏览器里。这是一个exe文件。

 

搭建分布式测试有这些好处:

1. 可以把测试用例分发到不同的机器上,并行运行。这样可以节省大量的时间。

2. 可以搭建不同的测试平台,比如Linux, windows,还有不同的浏览器平台。

3. 就我测试的经验看,有些测试用例必须使用多个机器一起才能实现。比如多用户在线审批流程。

4. 分布式的多并发的测试平台也是一种对系统的压力测试过程,有些问题在单个机器上不会出现,但是多平台一起运行,就会有。

 

Standalone Server里面有两个基本角色, 这个和交换机非常相似

1. Hub: 类似交换机,拿到client requesit,然后分发

2. Node: 客户端,提交request.

 

Server搭建有这么几个步骤, server需要机器上已经安装好了java,因为这是一个jar package.

1. 下载selenium-server-standalone-4.0.0-alpha-1.jar.

2. 然后java 启动执行。这里都使用默认值

java -jar selenium-server-standalone-4.0.0-alpha-1.jar -role hub

 技术分享图片

可以在浏览器访问http://localhost:4444/grid/console

技术分享图片

2.把client server加入到hub 里面

1. 下载selenium-server-standalone-4.0.0-alpha-1.jar.

2. 然后java 启动执行。这里都使用默认值

java -jar selenium-server-standalone-4.0.0-alpha-1.jar -role node -hub http://localhost:4444/grid/register

 

技术分享图片

 

 刷新下刚才的http://localhost:4444/grid/console 就能看见Node已经加进去了, 最简单的Grid就搭建完毕了。

技术分享图片

使用Grid运行测试用例(python代码)

 

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

driver = webdriver.Remote(
   command_executor=‘http://127.0.0.1:4444/wd/hub‘,
   desired_capabilities=DesiredCapabilities.CHROME)

driver = webdriver.Remote(
   command_executor=‘http://127.0.0.1:4444/wd/hub‘,
   desired_capabilities=DesiredCapabilities.OPERA)

driver = webdriver.Remote(
   command_executor=‘http://127.0.0.1:4444/wd/hub‘,
   desired_capabilities=DesiredCapabilities.HTMLUNITWITHJS)

 

配置Node以及Hub

有两种方式可以配置Node

1. 使用命令行方式

 2. 使用JSON文件

具体的参看下面的link

来源参考https://github.com/SeleniumHQ/selenium/wiki/Grid2

 

Selenium分布式自动化测试平台 Standalone Server 4.0 搭建

原文:https://www.cnblogs.com/herbert/p/10789343.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!