Карма не может запустить IE на сборке Team City

Карма не может запустить IE при работе в Team City. Я могу войти на сервер и запустить тесты из командной строки, но 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, но это не помогло.

Мы используем Team City 8.1.2 на Windows 2008 R2.

Любой совет будет принят во внимание.

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 при первом запуске показывает диалоговое окно для каждого запускающего его пользователя.

Решение: вручную запустите IE от имени пользователя TeamCity.

Чтобы запустить Internet Explorer в качестве пользователя службы, который вы настроили для запуска TeamCity, shift + right click на IE и выберите запустить как другой пользователь в меню. Появится окно панели входа - войдите и продолжайте. Когда вы вошли в систему, браузер запустится и предложит вам диалог. Выберите нужный вариант и продолжайте (Подсказка, отключите безопасность). В следующий раз, когда вы запустите Internet Explorer от имени этого пользователя, диалоговое окно не будет отображаться, и поэтому Karma сможет запустить свой набор тестов.

Если вы запускаете TeamCity как локальную систему, это немного сложнее, так как вам нужно скачать psexec от Microsoft, а затем выполнить следующую команду в powershell для запуска Internet Explorer:

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

Другие вопросы по тегам