如何使用firefox运行量角器?

时间:2015-08-05 05:15:21

标签: angularjs protractor

尝试使用firefox浏览器运行量角器测试。这是我的配置文件:

// An example configuration file.
exports.config = {
  //directConnect: true,

  // Capabilities to be passed to the webdriver instance.
  capabilities: {
    'browserName': 'firefox'
  },

  //chromeOnly:false,

  // Framework to use. Jasmine 2 is recommended.
  framework: 'jasmine2',

  // Spec patterns are relative to the current working directly when
  // protractor is called.
  specs: ['example_spec_backup.js'],

  seleniumServerJar: 'C:/Users/myname/protractor/protractor-master/chromedriver_win_26.0.1383.0/selenium-server-standalone-2.46.0.jar',

  baseUrl: 'http://localhost:9000/',

  // Options to be passed to Jasmine.
  jasmineNodeOpts: {
    defaultTimeoutInterval: 30000
  }
};

失败:在页面http://www.angularjs.org/上找不到Angular:重试超出角度。

这是其中一项测试:

  it('should greet the named user', function() {
    browser.get('http://www.angularjs.org');

    element(by.model('yourName')).sendKeys('Julie');

    var greeting = element(by.binding('yourName'));

    expect(greeting.getText()).toEqual('Hello Julie!');
  });

当我开始测试时,firefox会转到angularjs.org,但不知怎的,测试会返回错误?

2 个答案:

答案 0 :(得分:1)

您可以阅读量角器referenceConfig.js

直接连接到驱动程序 布尔。如果为true,Protractor将直接连接到浏览器Drivers  在chromeDriver和firefoxPath指定的位置。只有Chrome    和Firefox支持直接连接。

 directConnect: false,

firefox应用程序二进制文件的路径。如果为null,将尝试查找   firefox在默认位置。

 firefoxPath: null,

当您在页面上找不到Angular时

1.这可能是因为您使用的是旧版Angular。它不支持量角器。 2.你需要一些等待的方式,直到不仅元素存在,但Angular被加载到页面上。你可以做的一件事就是手动等到角度存在:

browser.wait(function() {
return browser.executeScript('return !!window.angular');
});

答案 1 :(得分:0)

您没有启动用于调用firefox浏览器的selenium服务器。在功能 -

之前,在配置文件中添加以下行
seleniumAddress: 'http://localhost:4444/wd/hub',

希望这有帮助。