量角器Angularjs E2E“浏览器不是功能”

时间:2014-02-09 01:09:02

标签: angularjs protractor

我一直尝试从ToT angular-seed master运行一些E2E测试,并在运行./scripts/e2e-test.sh时不断收到以下错误:

TypeError: Property 'browser' of object #<Object> is not a function

尝试将以下代码作为我的e2e场景之一运行时出现此错误:

'use strict';

/* https://github.com/angular/protractor/blob/master/docs/getting-started.md */

describe('MyApp', function() {

  describe(Index', function() {
    beforeEach(function() {
      browser().navigateTo('/');
    });


    it('should render feature specific image', function() {
      expect(element('img.featurette-image').length).toBe('4');
    });
  });
});

我想知道我的量角器配置是否不正确:

exports.config = {
  allScriptsTimeout: 11000,

  specs: [
    '../test/e2e/*.js'
  ],

  capabilities: {
    'browserName': 'chrome'
  },

  baseUrl: 'http://localhost:3000/',

  framework: 'jasmine',

  jasmineNodeOpts: {
    defaultTimeoutInterval: 30000
  }
};

我的单元测试运行得很好。这是我为他们提供的Karma配置(请注意,这是一个在端口3000上的sinatra应用程序的公共主管内的角度应用程序:

module.exports = function(config){
    config.set({
    basePath : '../',

    files : [
      'https://code.jquery.com/jquery-1.10.2.min.js',
      'app/lib/angular/angular.js',
      'app/lib/angular/angular-*.js',
      'test/lib/angular/angular-mocks.js',
      'app/js/**/*.js',
      'test/unit/**/*.js'
    ],

    exclude : [
      'app/lib/angular/angular-loader.js',
      'app/lib/angular/*.min.js',
      'app/lib/angular/angular-scenario.js'
    ],

    autoWatch : true,

    frameworks: ['jasmine'],

    browsers : ['Chrome'],

    plugins : [
            'karma-junit-reporter',
            'karma-chrome-launcher',
            'karma-firefox-launcher',
            'karma-jasmine'
            ],

    junitReporter : {
      outputFile: 'test_out/unit.xml',
      suite: 'unit'
    }

})}

感谢您的帮助!

1 个答案:

答案 0 :(得分:5)

您需要更改此行:

browser().navigateTo('/');

browser.navigateTo('/');

就是这样。