使用Protractor检查浏览器控制台中是否有错误

Lia*_*nat 9 javascript testing selenium angularjs protractor

我正在使用Protractor来测试AngularJS

我想检查一下,在测试结束时没有发生未捕获的异常,并打印到浏览器控制台.

有一个简单的方法吗?

Ran*_*ddy 15

如果您将Protractor与Jasmine一起使用,请使用以下代码:

afterEach(function() {
    browser.manage().logs().get('browser').then(function(browserLog) {
        expect(browserLog.length).toEqual(0);
    });
});
Run Code Online (Sandbox Code Playgroud)

如果没有控制台错误,这将通过测试用例.如果存在任何控制台错误,则测试将失败.

有关如何访问浏览器控制台内容的说明,请参阅常见问题解答中的" 如何获取浏览器控制台"部分.


ale*_*cxe 14

Protractor 2.0.0 推出了一个console专门用于该任务的新插件.

将以下内容添加到量角器配置中:

plugins: [{
    path: '/path/to/node_modules/protractor/plugins/console/index.js',
    failOnWarning: true,
    failOnError: true
}],
Run Code Online (Sandbox Code Playgroud)

  • 自2015年以来,它似乎已移入npm的单独的量角器-插件-控制台软件包 (2认同)