2014-02-07 2 views
2

У нас есть веб-приложение MVC 5 C# с использованием Kendo Mobile UI compenents, которые мы развертываем с помощью Octopus Deploy (Test, Staging, Prod) и имеем возможность запускать тесты Selenium UI.Selenium Internet Explorer Driver, Kendo Mobile и Octopus Deploy

Процесс отлично работает для всех сред с драйвером Selenium Chrome, однако у нас есть проблема с Selenium Internet Explorer Driver на серверах.

Тесты пользовательского интерфейса выходят из строя на серверах, когда они запускаются как часть процесса Octopus Deploy. Тестирование выполняется локальным разработчиком и выполняется на серверах, если вы выполняете скрипт вручную (тот же скрипт и пользователь, что и процесс Octopus Deploy).

Единственное различие, которое я вижу, заключается в том, что один из них работает без головы как часть выполнения скрипта щупальца, а другой нет.

Мы получаем следующее сообщение об ошибке:

Tentacle script execution OpenQA.Selenium.ElementNotVisibleException: Element is not displayed

Я могу воссоздать эту ошибку в локальном разработчика, изменив параметры для веб-драйвера IE для:

var options = new InternetExplorerOptions(); 
options.RequireWindowFocus = false; 
var webDriver = new InternetExplorerDriver(options); 

Элемент, который вызывает проблему является мобильной кнопкой Kendo:

<a data-role="button" data-rel="drawer" id="searchIcon" href="#searchDrawer" data-icon="search" data-align="left"></a> 

ответ

0

Обслуживание окон Tentacle работает под L ocal System по умолчанию, но у нее нет никакого пользовательского интерфейса. Вам необходимо предоставить службе возможность взаимодействовать с рабочим столом. Следующая ссылка может быть полезной:

http://lostechies.com/keithdahlby/2011/08/13/allowing-a-windows-service-to-interact-with-desktop-without-localsystem/

+0

Это не сработало, мы также попытались запустить службу щупальца в качестве пользователя администратора без везения, когда мы запускали скрипт вручную с тем же пользователем, с которым он работал нормально. Перезагрузите службу после изменения, чтобы убедиться. – GerardBeckerleg

+0

Можете ли вы запустить службу щупальца в интерактивном режиме (просто остановите службу, а затем запустите Tentacle.exe), чтобы узнать, работает ли это? –

+0

Мы выполнили https://octopusdeploy.com/blog/testing-powershell-scripts для запуска вручную. В первый раз, когда он сработал, он не удался, но все последующие времена он сработал. Мы попробовали другое развертывание через интерфейс, но это не удалось. – GerardBeckerleg