何时使用 Grid

Grid 适合你吗?

何时使用 Selenium Grid?

  • 为了在不同的浏览器类型、浏览器版本、操作系统上并行运行测试
  • 为了减少执行测试套件所需的时间

Selenium Grid 在多台机器(称为节点)上并行运行测试套件。对于大型和长时间运行的测试套件,这可以节省几分钟、几小时,甚至几天的时间。当被测应用程序 (AUT) 发生变化时,这缩短了测试结果的周转时间。

Grid 可以(并行)针对多个不同的浏览器运行测试,并且可以针对同一浏览器的多个实例运行测试。例如,假设一个有六个节点的 Grid。第一台机器有 Firefox 的最新版本,第二台有 Firefox “最新版本减一”,第三台是最新版本的 Chrome,剩下的三台是 Mac Mini,这允许三个测试在最新版本的 Safari 上并行运行。

执行时间可以用一个简单的公式表示

测试数量 * 平均测试时间 / 节点数量 = 总执行时间

   15      *       45s        /        1        =      11m 15s   // Without Grid
   15      *       45s        /        5        =      2m 15s    // Grid with 5 Nodes
   15      *       45s        /        15       =      45s       // Grid with 15 Nodes
  100      *       120s       /        15       =      13m 20s   // Would take over 3 hours without Grid

当测试套件执行时,Grid 会根据测试中的配置将测试分配给这些浏览器运行。

这样的配置可以大大加快即使是最大的 Selenium 测试套件的执行时间。

Selenium Grid 是 Selenium 项目完全原生的一部分,由核心 Selenium 开发团队的同一批提交者并行维护。认识到测试执行速度的重要性,Grid 自早期就一直是 Selenium 项目的关键组成部分。

上次修改时间:2022年8月23日:更新 Grid 文档的适用性部分 (#1139) (d29144c94a7)