多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

Selenium Grid如何使用-自动化测试

更新时间:2022-04-15 09:30:21 作者:多测师 浏览:292

  一、Selenium Grid解决什么问题

  可以分布式运行自动化测试用例,提高执行效率和解决兼容性测试的要求。

Selenium Grid如何使用-自动化测试

  二、运行机制

  selenium Grid使用Hub和Node模式,一台计算机作为Hub(管理中心)管理其他多个Node(节点)计算机。Hub负责将测试用例分发给多台Node计算机执行,并收集多台Node计算机执行结果的报告,汇总后提交一份总的测试报告。

  Hub:

  在分布式测试模式中,只能有一台作为Hub的计算机。

  Hub负责管理测试脚本, 并负责发送脚本给其他Node节点。

  所有的Node节点计算机会在Hub计算机中先进行注册,注册成功后再和Hub计算机通信,Node节点计算机会告之Hub自己的相关信息。例如,Node节点的浏览器相关信息、最多并发数等。

  Hub计算机可以给自己分配执行测试用例的任务。

  Hub计算机分发的测试用例任务会在各个Node节点计算机执行。

  Node:

  在分布式测试模式中,可以有一个或者多个Node节点。

  Node节点会打开本地的浏览器完成测试任务并返回测试结果给Hub。

  Node节点的操作系统和浏览器版本无需和Hub保持一致。

  在Node节点上可以同时打开多个浏览器并行执行测试任务。

  三、使用方法

  1、准备两台计算机,一台作为Hub,命名为A;另一台作为Node,命名为B。

  2、打开http://selenium-release.storage.googleapis.com/index.html?path=2.51/地址,

  下载selenium-server-standalone-2.53.1.jar,保存在两台计算机的硬盘C:/grid文件夹中。

  3、在A计算机上打开cmd窗口,输入并执行以下语句:

  java -jar selenium-server-standalone-2.53.1.jar -role hub 或者

  java -jar selenium-server-standalone-2.53.1.jar -role hub -hubConfig hub.json

  参数:

  role参数:hub表示作为管理中心

  port参数:hub服务器的端口号

  hubConfig:hub各种配置的json文件路径。hub.json与jar包在同一个文件夹中

  此语句表示使用java命令把jar文件作为程序执行,并且把参数role和hubConfig传递给jar文件的函数,用来启动Hub管理中心。

  4、在B计算机中打开cmd窗口,输入下面命令:

  java -jar selenium-server-standalone-2.53.1.jar -role webdriver -nodeConfig node.json

  参数:

  role参数:webdriver表示Node节点的名字

  nodeConfig :node各种配置的json文件路径。node.json与jar包在同一个文件夹中

  5、在访问Hub地址,http://172.16.231.45:4446/grid/console,验证Node节点是否已经注册成功。

  6、编写分布式测试脚本

  第一种方式:指定Node节点

  DesiredCapabilities dc = DesiredCapabilities.chrome();

  driver=newRemoteWebDriver(newURL("http://172.16.231.45:8888/wd/hub"),dc);

  第二种方式:指定Hub地址,由Hub分发

  DesiredCapabilities dc = DesiredCapabilities.chrome();

  driver=newRemoteWebDriver(newURL("http://172.16.231.45:4446/wd/hub"),dc);

  注意事项:

  new UR中的地址,必须加上"/wd/hub"

  第一种方式,测试用例只用在相应的Node节点计算机上执行

  第二种方式,有Hub根据每个Node节点浏览器版本及最大并发量分配测试用例

  以上内容为大家介绍了自动化测试中的Selenium Grid如何使用,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/

联系电话

17727591462

返回顶部