Karma 无法在 Team City 构建中启动 IE

Karma fails to launch IE on Team City build

在 Team City 下 运行ning 时,Karma 无法启动 IE。我可以登录服务器并从命令行 运行 进行测试,但 IE 总是无法从 Team City:

[Step 6/6] INFO [karma]: Karma v0.12.37 server started at http://localhost:9876/
[14:45:09][Step 6/6] INFO [launcher]: Starting browser Chrome
[14:45:09][Step 6/6] INFO [launcher]: Starting browser Firefox
[14:45:09][Step 6/6] INFO [launcher]: Starting browser IE
[14:45:25][Step 6/6] INFO [Firefox 38.0.0 (Windows 7 0.0.0)]: Connected on socket KeIupP7qx6Dn9ghM0KsX with id 75681035
[14:45:32][Step 6/6] INFO [Chrome 43.0.2357 (Windows 7 0.0.0)]: Connected on socket DORZdoNLQzPHx4ZT0KsY with id 61077412
[14:45:37][Step 6/6] INFO [IE 11.0.0 (Windows 7 0.0.0)]: Connected on socket 1p4cEWOQp6eKrUdO0KsZ with id 27572902
[14:45:47][Step 6/6] WARN [IE 11.0.0 (Windows 7 0.0.0)]: Disconnected (1 times), because no message in 10000 ms.
[14:45:47][Step 6/6] Chrome 43.0.2357 (Windows 7 0.0.0)
[14:45:47][Step 6/6] Firefox 38.0.0 (Windows 7 0.0.0)
[14:45:48][Step 6/6] Process exited with code 1

我尝试将 browserNoActivityTimeout 增加到 100000,但这没有帮助。

我们在 Windows 2008 R2 上 运行ning Team City 8.1.2。

如有任何建议,我们将不胜感激。

问题是 IE 从未 运行 在我们用于 Team City 代理的服务帐户下。它卡在浏览器首次 运行 时打开的 IE 选项对话框中。一旦我 运行 IE 并接受默认设置,它 运行 就在构建服务器上:

INFO [karma]: Karma v0.12.37 server started at http://localhost:9876/
[09:58:42]INFO [launcher]: Starting browser Chrome
[09:58:42]INFO [launcher]: Starting browser Firefox
[09:58:42]INFO [launcher]: Starting browser IE
[09:59:02]INFO [Firefox 38.0.0 (Windows 7 0.0.0)]: Connected on socket 1uAt8J2B8NPFj66W8Mib with id 61577635
[09:59:02]INFO [IE 11.0.0 (Windows 7 0.0.0)]: Connected on socket RPZgBEUhUGW2wD2h8Mic with id 95872295
[09:59:07]INFO [Chrome 43.0.2357 (Windows 7 0.0.0)]: Connected on socket mZzpKwFkIPpGY3vC8Mid with id 7944928
[09:59:08]Chrome 43.0.2357 (Windows 7 0.0.0)
[09:59:08]Firefox 38.0.0 (Windows 7 0.0.0)
[09:59:08]IE 11.0.0 (Windows 7 0.0.0)
[09:59:08]Process exited with code 0

@Kevin Kuszyk,你的解决方案对我也有效。

问题是 Internet Explorer 11 在第一次启动时会为每个启动它的用户显示一个对话框window。

解决方法: 以 TeamCity 用户手动启动 IE。

为了以您配置到 运行 TeamCity 的服务用户身份启动 Internet Explorer,在 IE 上 shift + right click 和 select 运行 作为菜单中的不同用户.登录栏 window 将显示 - 登录并继续。登录后,浏览器将启动并通过对话框提示您。选择所需的选项并继续(提示禁用安全性)。下次您以该用户身份启动 Internet Explorer 时,将不会显示该对话框,因此 Karma 将能够 运行 其测试套件。

如果您 运行 TeamCity 作为本地系统,这有点棘手,因为您必须从 Microsoft 下载 psexec 然后在 powershell 中执行以下命令以启动 Internet Explorer:

psexec -sid "C:\Program Files\Internet Explorer\iexplore.exe"