量角器v1.4.0(http://angular.github.io/protractor/#/api-overview)的文档尝试描述量角器中的全局变量:
browser
- WebDriver实例的包装器,用于导航和页面范围的信息。 browser.get方法加载页面。 Protractor期望Angular出现在页面上,因此如果它试图加载的页面不包含Angular库,它将抛出错误。 (如果您需要与非Angular页面进行交互,可以使用browser.driver直接访问包装的webdriver实例。)
protractor
- 包装WebDriver命名空间的Protractor命名空间。包含静态变量和类,例如protractor.Key,它枚举特殊键盘信号的代码。
我的问题:
1)我实际上并不理解这些定义以及browser
和protractor
2)在browser
的定义中提到了browser.driver
,但是当我查看量角器API文档(http://angular.github.io/protractor/#/api)时,没有driver
属性可供使用browser
。
答案 0 :(得分:3)
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(尽管作为新用户,您不应该使用它)