Confused о protractor v1.4.0 'protractor' и 'browser' глобальные переменные

Документ protractor v1.4.0 (http://angular.github.io/protractor/#/api-overview) пытается описать глобальные переменные в транспортимере:

browser - обертка вокруг экземпляра WebDriver, используемая для навигации и информации по всему сайту. Метод browser.get загружает страницу. Транспортир ожидает, что угловой будет присутствовать на странице, поэтому он будет вызывать ошибку, если на странице, которую он пытается загрузить, не содержит Угловую библиотеку. (Если вам нужно взаимодействовать с неграмотной страницей, вы можете получить доступ к обернутому экземпляру webdriver напрямую с помощью браузера.driver).

protractor - пространство имен Protractor, которое обертывает пространство имен WebDriver. Содержит статические переменные и классы, такие как protractor.Key, который перечисляет коды для специальных сигналов клавиатуры.

Мои вопросы:

1) Я действительно не понимаю эти определения и разницу между browser и protractor

2) в определении browser упоминается о browser.driver но когда я смотрю на документ API транспортира (http://angular.github.io/protractor/#/api), для browser нет свойства driver.

1 ответ

1) Есть 3 важных ключевых слова: element, browser и protractor.

element - как вы выбираете контент на странице, browser - это то, как вы взаимодействуете с браузером, который вы тестируете (т.е. browser.get(...)), protractor - это ярлык для доступа к статическим переменным, определенным в пространстве имен webdriver,

Например:

browser.get('http://www.someUrl.com'); // tell browser to go to an url
var input = element(by.css('#someInput')); // find the input using a css selector
input.sendKeys(protractor.Key.ENTER); // Send a 'webdriver' key to the element (see http://selenium.googlecode.com/git/docs/api/javascript/enum_webdriver_Key.html)

Я бы посоветовал вам перейти на http://angular.github.io/protractor/#/tutorial как исходное место.

2) Это потому, что driver является свойством в browser а не функцией. Используйте browser.driver для доступа к необработанному webdriver (хотя, как новый пользователь, вам не нужно его использовать)

licensed under cc by-sa 3.0 with attribution.