PROPRACTORを使用してブラウザコンソールにエラーがないことを確認してください

StackOverflow https://stackoverflow.com//questions/24010647

質問

Practorを使用してAngularJS

をテストしています

テストの終わりに、不明瞭な例外が発生してブラウザのコンソールに印刷されたことを確認したい。

それをする簡単な方法はありますか?

役に立ちましたか?

解決

JasmineでPractorを使用している場合は、次のコードを使用してください。

afterEach(function() {
    browser.manage().logs().get('browser').then(function(browserLog) {
        expect(browserLog.length).toEqual(0);
    });
});
.

コンソールエラーがない場合、これはテストケースに渡されます。コンソールエラーがある場合は、テストは失敗します。

ブラウザのコンソールの内容にアクセスする方法に関する説明は、 FAQのブラウザのコンソール セクションを保留する方法

他のヒント

practor 2.0.0 タスクのための新しいconsoleプラグイン。

PROUTRACTOR設定に次のものを追加します。

plugins: [{
    path: '/path/to/node_modules/protractor/plugins/console/index.js',
    failOnWarning: true,
    failOnError: true
}],
.

少し努力して、デフォルトのテストフレームワークでPractrorを使用していない場合は、accumber.jsを使って働くことができます。

this.After(function(callback) {
    browser.manage().logs().get('browser').then(function(browserLog) {
        if (browserLog.length !== 0) {
            var failMessage = "There was output in the browser console:" +
                              browserLog.map(JSON.stringify).join(";\n");
            callback.fail(failMessage);
        }
        else {
            callback();
        }
    });
});
.

のドキュメントをチェックアウトしたいと思います。> これはJasmineのafterEachと同等です。

@ velochy述べたモジュールのための独自のパッケージがあります: https://www.npmjs.com/package/protractor-console-plugin

Printractor.conf:

で使用できます。
  plugins: [{
    package: 'protractor-console-plugin',
    failOnWarning: {Boolean}                (Default - false),
    failOnError: {Boolean}                  (Default - true),
    logWarnings: {Boolean}                  (Default - true),
    exclude: {Array of strings and regex}   (Default - [])
  }]
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top