【问题标题】:Selenium GRID vs TestNG parallelSelenium GRID 与 TestNG 并行
【发布时间】:2017-11-08 20:00:31
【问题描述】:

This topic 是我正在寻找的答案的开始。我需要了解更多。

短篇小说:

如果纯 TestNG 并行执行似乎可以正常工作,为什么还要使用 GRID?

长篇大论:

背景:

  • 我们现在正在运行大约 40 个测试,而且还在不断增长。
  • 我们只使用一种浏览器 (chrome)。
  • 为了使测试更快,我们进行并行测试(有意义)。
  • 我们在配置 GRID 解决方案时遇到问题,
  • 在许多情况下,我们只是放弃它并并行运行纯 testNG。

问题:

  1. 我需要知道如此固执是否有意义 整个网格。就目前而言,它似乎只是在消耗时间而不给予任何 附加价值。

我自己的想法: 我能想到的唯一可以证明 GRID 是运行测试 使用不同的机器。如果我们需要真正平衡 在多台服务器上加载。但在这一点上,即使是我自己的笔记本电脑 完美地完成工作。这种情况不会改变 在不久的将来会发生戏剧性的变化,那么为什么要打扰呢? 上面提到的link声称是无网格并行的结果 测试可能变得不可预测。我们不会面对这种情况。所以这个问题 可能是:在什么意义上不可预测?需要注意什么?

提前感谢您的帮助。

干杯, 格雷格

【问题讨论】:

    标签: selenium parallel-processing architecture grid automated-tests


    【解决方案1】:

    Grid 模仿负载平衡器并根据所需的功能将测试分配给节点。而 testNG xml 中的并行属性只是指示 testNGrunner 一次触发 n 个测试。

    CAVEAT :如果您不使用网格进行并行测试执行,您的单个主机将在您扩大线程数时过载。无网格并行测试的结果可能会变得不可预测,因为多个会话会很快填满堆内存。通用计算机具有有限的堆内存。你没有遇到这个问题,可能是因为你没有达到这个限制。

    【讨论】:

      【解决方案2】:

      让我们考虑一些例子:

      1. 您的目标是检查 Windows 和 MAC 上的功能。如果没有网格,您将运行案例两次。

      2. 您有一个测试用例,其中某个功能在旧版本的浏览器中中断,现在是时候进行回归测试了。如果没有网格,您将为每个浏览器的旧版本多次运行测试用例。

      3. 依赖于不同屏幕分辨率的案例。

      网格可以简化配置工作。

      它只是为了尽可能减少运行测试用例的时间。

      【讨论】:

        猜你喜欢
        • 2016-09-17
        • 1970-01-01
        • 2016-04-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多