在硒网格中分配多少线程

How many threads to assign in selenium grid

我在使用 Selenium Grid 时有点困惑。 我注册了一个集线器和两个节点。 节点 1 - 有 2 个 Chrome 和 2 个 IE 浏览器,每个 maxInstance 2。最大会话 4
节点 2 - 有 2 个 Chrome 和 2 个 IE 浏览器,每个 maxInstance 2。最大会话 4

我在TestNG.xml中提到过 并行="tests" 线程计数="4"

  1. 那么这究竟是如何工作的呢?
  2. 是否会send/execute将一个测试标签中提到的所有class都发送给一个节点? 我应该在这里使用多少个线程是浏览器实例的总数所以在我的例子中它将是 8?
  3. 如果我说 parallel=classes,它会在每个节点上 send/execute 每个 class 吗?
  4. 提高性能的最佳方法是什么?通过并行="methods"?

请帮帮我。

首先,据我所知,建议每个节点只使用一个 IE。

  1. 每次您请求驱动程序进行测试时,它都会检查它是否在网格上可用并提供给您。
  2. 每个测试标签将占用一个浏览器实例。要加载所有浏览器,您可以设置 thread-count="8".
  3. 它将在单独的实例上执行每个 class。 2 和 3 还取决于您如何在代码中创建、关闭和重用驱动程序(在 test/class/method 之前),例如你 运行 并行 classes 但在每个方法中创建新的驱动程序 -> 你将 运行 在你的网格中离开浏览器,因为它们需要在重新使用之前退出。
  4. 这取决于 :) 如果您有资源并且您的方法可以 运行 并行,您可以使用 "method" 模式。