什么时候应该使用服务网格

通常来说,有2个原因你需要使用服务网格。

  • 在多种浏览器,多种版本的浏览器,不同操作系统里的浏览器里执行你的测试
  • 缩短完成测试的时间

服务网格通过使用多台终端机器来并行执行测试,以达到加速测试执行的目的。 比如的测试套件里包含100个测试,你的服务网格支持4种不同的终端(虚拟机或者独立的物理设备) 来执行这些测试,相比你只有一台终端来执行,你的测试套件只需要4分之1的时间。 在一些大型测试套件,或者一些长时间执行的测试比如执行大量的数据校验,这样做会节约大量的时间。 一些测试会需要几个小时。另一个改善的动力来自缩短这种耗时的测试的是为了开发人员从提交代码到获得测试结果的期间。软件开发团队实践敏捷开发时期望尽可能早的得到测试反馈,而不是一晚一晚的等测试通过。

服务网格也会被用来支持在不同的运行环境的测试,比如,在同一实践针对不同浏览器的测试。 比如,一个由虚拟机组成的服务网格,每一个终端机可以支持一个不同的应用程序需要支持的浏览器。 比如终端1有IE8,终端2有IE9,终端3有最新的Chrmoe,终端4有最新的Firefox。当所有的测试套件都执行了, Selenium服务网格会接受每个测试浏览器组合的要求,然后安排每个测试被执行在所要求的浏览器上。

另外,一个服务网格可以包含同样的浏览器,类型,版本。比如,你可以有一个包含4台终端,没个终端包含3个 Firefox70的实例的网格,提供了一个服务器集群提供可用的Firefox实例。当测试套件被执行的时候,每个被提交进服务网格的测试会被分发到可用的Firefox实例。在这个情况下,同一时间可以有12个测试被并行的执行, 显著的缩短的整个测试完成的时间。

服务网格是弹性的。这2个例子可以被组合来创建多种实例的浏览器和版本。通过配置,可以提供并行执行以加速测试,或者支持多种浏览器版本的模拟2中能力。