Я запускаю автоматические тесты браузера IE с использованием Watin 2.1.0. Они правильно работать на моей локальной машине, однако я стараюсь, чтобы заставить их работать на моем TeamCity сборки машины, но я получаю эту ошибку, когда тесты запускаются на одной и той же конкретной точке в каждом испытании:Watin Tests не работают на машине сборки TeamCity
System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
полный стек:
at mshtml.HTMLWindow2Class.IHTMLWindow2_execScript(String code, String language)
at WatiN.Core.Native.InternetExplorer.IEUtils.RunScript(String scriptCode, String language, IHTMLWindow2 window)
at WatiN.Core.Native.InternetExplorer.IEUtils.RunScript(String scriptCode, String language, IHTMLWindow2 window)
at WatiN.Core.Native.InternetExplorer.IEElement.GetJavaScriptElementReference()
at WatiN.Core.Native.InternetExplorer.IEFireEventHandler.CreateJavaScriptFireEventCode(NameValueCollection eventObjectProperties, String eventName)
at WatiN.Core.Native.InternetExplorer.IEFireEventHandler.FireEvent(String eventName, NameValueCollection eventProperties, Boolean noWait)
at WatiN.Core.Native.InternetExplorer.IEElement.FireEvent(String eventName, NameValueCollection eventProperties)
at WatiN.Core.Element.FireEvent(String eventName, Boolean waitForComplete, NameValueCollection eventProperties)
at WatiN.Core.Element.FireEvent(String eventName)
at WatiN.Core.Element.Focus()
Я не совсем уверен, что происходит здесь. Учетная запись пользователя, на которой выполняются тесты, является администратором, и я установил сайты, используемые в качестве доверенных сайтов в настройках IE. Я почти уверен, что это настройка в TeamCity, которую я пропустил, поскольку они работают локально, но не на сервере сборки TeamCity.
Любая помощь будет оценена по достоинству.
EDIT: У нас есть три агента Team City работает несколько проектов с одним, как хозяин Это Вход на вкладке одного из сборки агентов, не хозяин:
Флажок «Разрешить обслуживание для взаимодействия с рабочим столом» отмечен галочкой, но Watins все еще не работают.
На хост-машине:
Однако Watins не работают на этой машине тоже. Watins также запускают IE как процесс, используя другую учетную запись пользователя. Таким образом, агент сборки работает под учетной записью пользователя «A» и в рамках тестов watin IE запускается под учетной записью пользователя «B».
Эта информация может быть более актуальной при поиске решения. Благодаря!
Как это сделать? – Ben
перейдите к вашему менеджеру службы (start -> run -> services.msc) на машине, на которой запущен агент сборки. найдите службу «Team City Build Agent», откройте свойства. на вкладке «войти в систему» отметьте «разрешить услугу взаимодействовать с рабочим столом», примените изменения. – kcamp
«Разрешить службу для взаимодействия с рабочим столом» уже был проверен. Вы имеете в виду отменить это? – Ben