由Karma从MSBuild执行时启动Chrome崩溃

时间:2015-11-05 17:19:23

标签: google-chrome msbuild karma-runner

我的构建服务器服务正在从msbuild文件执行以下命令:

Exec Command="karma start $(LandscapeExplorerProjectFolder)karma.conf.js -- log-level debug

然后启动在Node.js上运行的Karma实例

Karma配置为启动Chrome以运行我的Jasmine测试。当我通过登录服务器并在命令提示符下键入手动执行上述命令时,测试按照我的预期运行。

但是当我的构建服务启动Karma时,Chrome最初会启动,但随后会崩溃。

运行构建时,从控制台的输出中得到以下内容:

WARN [launcher]: [39mChrome have not captured in 60000 ms, killing.
DEBUG [launcher]: [39mProcess Chrome exited with code 0

查看Chrome日志时,我看到:

[6888:2988:1105/162913:ERROR:child_process_launcher.cc(444)] Failed to launch child process
[6888:2988:1105/162913:WARNING:sad_tab_view.cc(105)] Tab Killed: http://localhost:9876/

完全相同的控制台命令在手动执行时工作正常,但是有一些关于构建服务执行导致Chrome崩溃的事情的方式。有没有人对此有任何想法?

1 个答案:

答案 0 :(得分:1)

我之前见过这个问题。 我无法解决它,但能够解决它。 这似乎与在Windows上运行Jenkins作为SYSTEM帐户有关 - 如果是这种情况,请尝试将服务更改为作为服务帐户运行。

我使用PSexec解决了这个问题 - 您可以在以下位置下载该工具: https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

然后在工作中使用它来执行Karma: C:\ Path \ to \ pexec.exe -s -i -accepteula karma start $(LandscapeExplorerProjectFolder)karma.conf.js - log-level debug

这似乎与使用SYSTEM产生子进程有关。