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 应用程序应该可以通过浏览器访问,而不管底层 os。尽管如此,Chrome 严重依赖沙盒,将不同的进程和应用程序保存在不同的分区中。这限制了应用程序与 OS 内核之间的交互。
Chrome OS 和 Chrome 安全性
Google 的 browser-based operating system 即 Chrome 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;博士
我们的 webapp 通常在 windows OS 中使用 Google Chrome 访问。我们真的需要 windows OS 还是 ubuntu 和 GUI 就足够了?
AFAIK,Chrome 是来自 OS 的沙箱。我们正在使用 teamcity 和 selenium,chrome 驱动程序进行测试。我们的计划是在 GUI 中使用 Ubuntu 并将其注册为 teamcity 代理,例如kubernetes pod 如果可能的话
从一般的角度来看,Web 应用程序应该可以通过浏览器访问,而不管底层 os。尽管如此,Chrome 严重依赖沙盒,将不同的进程和应用程序保存在不同的分区中。这限制了应用程序与 OS 内核之间的交互。
Chrome OS 和 Chrome 安全性
Google 的 browser-based operating system 即 Chrome 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