CI 代理 OS 在 webapp UI 测试中重要吗?

Does CI agent OS matter in webapp UI testing?

我们的 webapp 通常在 windows OS 中使用 Google Chrome 访问。我们真的需要 windows OS 还是 ubuntu 和 GUI 就足够了?

AFAIK,Chrome 是来自 OS 的沙箱。我们正在使用 teamcity 和 selenium,chrome 驱动程序进行测试。我们的计划是在 GUI 中使用 Ubuntu 并将其注册为 teamcity 代理,例如kubernetes pod 如果可能的话

从一般的角度来看,Web 应用程序应该可以通过浏览器访问,而不管底层 。尽管如此,Chrome 严重依赖沙盒,将不同的进程和应用程序保存在不同的分区中。这限制了应用程序与 OS 内核之间的交互。


Chrome OS 和 Chrome 安全性

Google 的 browser-based operating systemChrome OS 将数据存储在云中以实现该想法 ...“浏览器是操作系统”... 它依赖于 Chrome 浏览器使用的许多相同的安全功能和概念。

Chrome 也通过 Sandbox feature and should be functional irrespective of the underlying Operating System as Linux systems implements Sandboxing 实现了更严格的安全性。


参考资料

您可以在以下位置找到一些相关的详细讨论:

  • compile & execute Chromium failed due to SUID sandbox issue
  • NaCl helper process running without a sandbox error using Chrome through Selenium in Linux
  • NaCl helper process running without a sandbox! error when running npm tests

tl;博士

Sandboxing Chrome OS system services