运行 使用或不使用无头浏览器的 Karma 和 Protractor 测试

Running Karma and Protractor tests with or without a headless browser

我对 运行在 TeamCity CI 服务器上使用 Karma 和量角器感到困惑。我是否应该 运行 使用无头浏览器进行这些测试,我该怎么做?

您可以使用无头浏览器进行单元测试。如果你需要一个带 karma/jasmine 的无头浏览器,你可以使用 PhantomJS karma launcher 。您可以在 运行 karma init 时简单地指定它,它会在该配置的其中一个步骤中要求您提供浏览器启动器。或将以下内容添加到您的 package.json 文件

{
  "devDependencies": {
    "karma": "~0.10",
    "karma-phantomjs-launcher": "~0.1"
  }
}

但是对于量角器,我建议您不要使用无头浏览器。因为您可能希望在量角器测试 运行 时看到测试的实际情况(例如应用程序界面中的操作和交互发生了什么)。它是由你决定。几乎没有可用于量角器测试的无头浏览器以及 PhantomJS for protractor