无法使用量角器测试运行器加载应用程序

时间:2013-11-22 19:04:15

标签: google-chrome integration-testing protractor

我是AngularJS的新手。我正在尝试使用Protractor进行端到端测试。目前,我在grunt-protractor-runner的帮助下从grunt运行我的测试。我的基本测试如下所示:

describe('My Tests', function () {
    var p = protractor.getInstance();

    beforeEach(function () {
    });

    it('My First Test', function () {
        var message = "Hello!";
        expect(message).toEqual('Hello!');
    });
});

这很好用。但是,它确实没有测试我的应用程序。要做到这一点,我总是想从应用程序的根目录开始。为了做到这一点,我已将上述内容更新为以下内容:

describe('My Tests', function () {
    var p = protractor.getInstance();

    beforeEach(function () {
        p.get('#/');
    });

    it('My First Test', function () {
        var message = "Hello!";
        expect(message).toEqual('Hello!');
    });
});

此测试运行后,Chrome即会启动。但是,“about:blank”是在地址栏中加载的内容。我的应用从不加载。我查看了我的protractor.config.js文件,看起来是正确的。它看起来如下:

exports.config = {
    allScriptsTimeout: 110000,

    seleniumServerJar: './node_modules/protractor/bin/selenium/selenium-server-standalone-2.37.0.jar',
    seleniumPort: 1234,
    seleniumArgs: [],
    seleniumAddress: null,

    chromeDriver: './node_modules/protractor/bin/selenium/chromedriver.exe',
    capabilities: { 'browserName': 'chrome' },

    specs: [ '../tests/**/*.spec.js' ],

    jasmineNodeOpts: {
        showColors: true,
        defaultTimeoutInterval: 30000
    }
};

如何通过量角器将我的应用加载到Chrome中进行集成测试?

1 个答案:

答案 0 :(得分:1)

也许你已经找到了如何让它工作,但如果没有,也许以下内容会有所帮助(如果有必要,修改端口):

// A base URL for your application under test. Calls to protractor.get()
// with relative paths will be prepended with this.
baseUrl: 'http://localhost:3000'

将此属性添加到protractor.config.js文件中。

参考:https://github.com/angular/protractor/blob/master/referenceConf.js