2015-04-23 2 views
3

В приложении AngularJS можно определить, является ли среда Транспортером?Обнаруживать, является ли среда Protractor

Я хотел бы отключить определенные функции, такие как Geolocation при выполнении моих тестов. Это не то, что я хочу проверить на данный момент, и я уверен, что это то, что приводит к тому, что мои тесты не запускаются.

В моем приложении я использую window.jasmine, чтобы отключить определенные действия для опроса при запуске тестов Jasmine, чтобы что-то подобное было бы хорошим.

т.е.

if(!window.protractor) { 
    geoLocationRun() 
} 

Это не работает, и там не кажется, что я могу использовать на Window.

Примечание: Я знаю, что могу издеваться над геолокацией, которую я могу сделать, если это невозможно. Возможно, это лучший подход в любом случае, однако было бы хорошо знать, есть ли подходящее решение. How do I enable geolocation support in chromedriver for Selenium?

ответ

1

Я бы порекомендовал вам переместить ваш код геоданных в угловой модуль. После этого вы можете издеваться модуль в ваших тестах транспортир с помощью browser.addMockModule

http://angular.github.io/protractor/#/api?view=Protractor.prototype.addMockModule

+1

Я не знал об этом методе, так что выглядит лучше, чем другой подход, чтобы позволить геолокации. У меня есть он в модуле уже так, чтобы он работал хорошо. Я все еще хотел бы узнать, можно ли обнаружить среду Транспортира, хотя – Asta

Смежные вопросы