karma-runner错误:无法调用未定义的方法'invoke'

时间:2013-08-30 17:48:18

标签: karma-runner

我的业力赛跑者让我很困惑。有些测试运行得很好,但其他看似相似但没有。

这有效:

it('should display an error when accessing /business-user without authentication', function() {
    browser().navigateTo('../business-user');
    expect(element('p#flash').text()).toBe('You must be logged in to access that page.');
});

这不是:

it('should take the user to the index lander upon logout', function() {
    browser().navigateTo('../business-user/login');
    input('username').enter('matt');
    input('password').enter('letmein');
    element('input:last').click();
    element('a#logout').click();
    expect(browser().window().path()).toBe('/');
});

运行显示的测试给出了一个错误,指出无法找到#logout。我暂停跑步者验证#logout在那里,而且确实如此。当我恢复时,我得到“TypeError:无法调用方法'调用'未定义'错误。

我认为应该定义的对象是元素,但为什么不能说它找不到元素呢?更重要的是,为什么不能在一开始就找到它?

强制性的karma-e2e.conf.js转储:

// Karma configuration
// Generated on Tue Aug 20 2013 17:01:18 GMT-0600 (MDT)

module.exports = function(config) {
    config.set({

        basePath: '../..',

        frameworks: ['ng-scenario'],

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

        exclude: [
        ],

        reporters: ['progress'],

        port: 9876,

        colors: true,

        logLevel: config.LOG_INFO,

        autoWatch: false,


        browsers: ['Chrome'],

        captureTimeout: 60000,

        singleRun: true,

        proxies: {
            '/': 'http://localhost:3000/'
        },

        urlRoot: '/_karma_/'

    });
};

有什么想法吗?

0 个答案:

没有答案