在自动化测试过程中当测试用例需要验证的环境比较多时,可以通过Selenium Grid控制测试用例在不同的环境下运行。Selenium Grid主节点可以根据测试用例中指定的平台配置信息把测试用例转发给符合条件的代理节点。例如,测试用例中指定了要在Windows上用Firefox版本进行测试,那么Selenium Grid会自动匹配注册信息为Windows且安装了Firefox的代理节点。如果匹配成功,则转发测试请求;如果匹配失败,则拒绝请求。
Selenium Grid分布式结构是由一个Hub(主节点)和若干个Node(代理节点)组成的。Hub用来管理各个Node的注册和状态信息,接收远程客户端代码的请求调用,把请求的命令转发给Node执行,如下图所示: