关于测试:protractor实例与浏览器

Protractor instance vs browser

我曾尝试过寻找类似的质量检查人员,但我找不到一个能使我满意的产品。
所以基本上我看到在某些示例中它被使用了

1
2
ptor = protractor.getInstance();
ptor.get(url);

在其他一些示例中,它被使用。

1
browser.get(url);

问题是:使用protractor实例和浏览器获取特定的URL有什么区别?
另外如果我在PS中的假设是正确的,这是更好的做法:仅使用protractor,还是将它们混合使用?

P.S。我也看到了调试器在用法上的相同差异。
我知道protractor是Web驱动程序的package器,并且我假设protractor.getInstance()。get(url)是browser.get(url)的隐式提示。


browser是新的首选语法。 browserprotractor.getInstance()相同。

一些版本之前,引入了新的语法。主要变化是:

  • browser是一个protractor实例
  • element(locator)ptor.findElement(locator)的新语法
  • by[strategy]protractor.By.[strategy]的新语法

这是新的文档:http://angular.github.io/protractor/#/api


在protractor源代码中,浏览器和protractor单例实例可以是同一对象。

1
2
3
4
5
6
7
var browser = protractor.wrapDriver(
    driver,
    config.baseUrl,
    config.rootElement);
browser.params = config.params;

protractor.setInstance(browser);

您还可以在测试中验证断言:

1
2
3
4
5
6
describe('My page', function() {
  it('should display something', function() {
    console.log('test ' + (protractor.getInstance() === browser));
    ...
  });
});

我的偏好是始终使用protractor单例实例。但是我认为使用实例浏览器或两者都不会带来任何不便。