angular - 删除 Protractor e2es 上的 Angular 和 Webdriver INFO 控制台日志

标签 angular logging protractor e2e-testing

当我们使用 Protractor 运行 e2e 时,我们正在尝试删除不必要的控制台日志

我们尝试将 loggingPrefslogLevel 添加到我们的 Protractor 配置中。我们还尝试覆盖 SpecReporter 以删除不需要的日志

这是我们的 protractor.conf.js:

{
allScriptsTimeout: 120000,
specs: [
    './e2e/**/*.e2e-spec.ts'
],
capabilities: {
    browserName: 'chrome',
        shardTestFiles: true,
        loggingPrefs: {
            driver: 'OFF',
            server: 'OFF',
            browser: 'OFF'
        },
    maxInstances: 3,
    chromeOptions: {
        args: isDocker ? ["--headless", "--disable-gpu", "--window-size=1224x800", "--no-sandbox"] : []
    }
},
logLevel: "ERROR",
directConnect: true,
baseUrl: 'http://localhost:4202',
framework: 'jasmine',
jasmineNodeOpts: {
    showColors: true,
    isVerbose: false,
    includeStackTrace: false,
    defaultTimeoutInterval: 240000,
    print: function() {}
},
onPrepare() {
    require('ts-node').register({
        project: 'e2e/tsconfig.e2e.json'
    });
    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: false}, summary:{displayPending: false } }));

    browser.driver.get(browser.baseUrl + '/#access_token=' + process.env.ESO_ACCESS_TOKEN);
}
};

我们正在尝试从 cmd 中删除这些类型的日志:

[1022/132003.278:INFO:CONSOLE(3904)] "Angular is running in the development mode. Call enableProdMode() to enable the production mode.", source: webpack-internal:///./node_modules/@angular/core/esm5/core.js (3904)
[1022/132003.285:INFO:CONSOLE(3904)] "Angular is running in the development mode. Call enableProdMode() to enable the production mode.", source: webpack-internal:///./node_modules/@angular/core/esm5/core.js (3904)
[1022/132003.404:INFO:CONSOLE(3904)] "Angular is running in the development mode. Call enableProdMode() to enable the production mode.", source: webpack-internal:///./node_modules/@angular/core/esm5/core.js (3904)
[1022/132005.755:INFO:CONSOLE(2998)] "WebSocket connection to 'ws://localhost:4202/sockjs-node/880/zuhsnbvp/websocket' failed: WebSocket is closed before the connection is established.", source: webpack-internal:///./node_modules/sockjs-client/dist/sockjs.js (2998)
[1022/132005.938:INFO:CONSOLE(2998)] "WebSocket connection to 'ws://localhost:4202/sockjs-node/921/5ziqcybu/websocket' failed: WebSocket is closed before the connection is established.", source: webpack-internal:///./node_modules/sockjs-client/dist/sockjs.js (2998)
[1022/132006.119:INFO:CONSOLE(2998)] "WebSocket connection to 'ws://localhost:4202/sockjs-node/747/rduwognj/websocket' failed: WebSocket is closed before the connection is established.", source: webpack-internal:///./node_modules/sockjs-client/dist/sockjs.js (2998)

最佳答案

您应该在 chromeOptions 中添加 --log-level=3 作为 args: isDocker ? [“--headless”、“--disable-gpu”、“--log-level=3”、“--window-size=1224x800”、“--no-sandbox”]。 如果有效请告诉我

关于angular - 删除 Protractor e2es 上的 Angular 和 Webdriver INFO 控制台日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58509625/

相关文章:

logging - 如何为log4net指定通用应用程序数据文件夹?

python - 正确处理 logging.config.fileConfig 抛出的 IOError?

typescript - Protractor headless (headless) Chrome 无法下载文件

javascript - 使用 parentElementArrayFinder 定位父元素

javascript - Protractor 截图测试错误代码105

javascript - Angular - 多次使用的组件是否完全是自己创建的?

angular - 在 Angular Material 中选择芯片时的错误行为

cocoa - Mac OpenGL 应用程序中的控制台

angular - TSLint 正在被弃用。这对 Angular 有何影响?

angular - 不使用 mat-error、ng-template 和 *ngTemplateOutlet 进行渲染