【问题标题】:How to launch 50 browser instances using Selenium Grid in the same machine如何在同一台机器上使用 Selenium Grid 启动 50 个浏览器实例
【发布时间】:2019-03-20 15:13:23
【问题描述】:

我需要在虚拟机中启动 50 个浏览器实例 (IE),并在这些浏览器上并行执行相同的测试用例 50 次。这是一种负载测试,我不确定硒网格概念是否可行。如果不是,我想知道执行此任务的另一种方法。

【问题讨论】:

    标签: testing selenium-grid


    【解决方案1】:

    如果您熟悉 Docker 和 Docker Compose,您可以使用它。

    首先你必须安装docker(如果你有linux或mac这应该很容易,如果没有,那么你可以在windows(docker桌面)上安装它。有很多关于如何使用docker的教程。

    安装完成后,您需要创建一个文件夹,并在该文件夹中创建一个 .yml 文件(您可以使用 notepad++ 进行此操作)。 文件名应该是:docker-compose.yml

    在 .yml 文件中,您必须粘贴以下代码:

    version: '2'
    services:
      chrome:
        image: selenium/node-chrome:3.14.0-gallium
        volumes:
          - /dev/shm:/dev/shm
        depends_on:
          - hub
        environment:
          HUB_HOST: hub
    
      hub:
        image: selenium/hub:3.14.0-gallium
        ports:
          - "4444:4444"
    

    创建 yaml 后,您需要在 .yml 文件所在的路径上打开一个 git bash 终端,然后您需要编写以下命令:

    docker-compose up -d
    

    网格将从 docker hub 下载,并且很快就会启动。 1-2 分钟后,您应该在本地主机上启动并运行网格。

    您可以在 4444 端口上自行查看。

    如果您已经为本地网格进行了设置,那么它应该可以工作,但是您将无法看到网格上运行的测试,因为现在它们在您的 docker 容器中运行。

    现在如果你需要更多节点,只需编写以下命令:

    docker-compose scale chrome=50
    

    它会创建 50 个 chrome 节点。

    但是,您需要分配大量资源,以便容器能够支持所有负载。

    如果您需要更多信息,我很乐意为您提供帮助!

    【讨论】:

    • 我试试这个...谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-10
    • 2023-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-25
    • 1970-01-01
    相关资源
    最近更新 更多