何时使用 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 项目的关键组成部分。