2016-09-03 29 views
0

以下は私のglobals.jsです。これはroot/libというディレクトリにあります。以下はnightwatch.js:前後フック

module.exports = { 

    beforeEach: function (browser) { 

     browser.init(); 
     browser.login('admin'); 
    }, 

    afterEach: function (browser) { 
     browser.logout(); 
     browser.end(); 
    }, 
} 

ルート/テスト

var util = require('../../lib/globals.js'); 

module.exports = { 



    'user login': function (browser) 
    { 


     // verify login, then logout 
     headerPage.verifyAuthentication(); 

     browser.logout(); 
     browser.end(); 

    } 

}; 

しかし、テストは全くbeforeEachafterEachを実行していない中で横たわって、私のテストファイルです。私は100以上のテストファイルがあるので、各テストの前後にこれらの2つの機能を置かずに、これらの2つを各テストファイルの前に実行します。

クライアントの指示に従って、現在mochaまたはgruntを使用することはできません。ここに何が欠けているのか教えてください。

答えて

2

は、次のスニペットを試してみてください。

globals.js

module.exports = function(options) { 
    return Object.assign({}, options || {}, { 
    beforeEach(browser) { 
     // common 
     browser.init(); 
     browser.login('admin'); 
     // custom 
     if (options.beforeEach) { 
     options.beforeEach.apply(this, arguments); 
     } 
    }, 

    afterEach() { 
     // custom 
     if (options.afterEach) { 
     options.afterEach.apply(this, arguments); 
     } 
     // common 
     browser.logout(); 
     browser.end(); 
    } 
    }); 
} 

テストファイル

var module = require('../../lib/globals.js'); 
module.exports = module({ 
    'user login': function (browser) { 
     // verify login, then logout 
     headerPage.verifyAuthentication(); 

     browser.logout(); 
     browser.end(); 
    } 
}); 

私は(我々は修正版を使用して)そのコードを実行されませんでしたが、アイデアがある - 収集しますすべてbeforeEach/afterEachグローバルモジュールとコンクリートテスト(一般/カスタムパーツの注文を変更する必要があります)

+0

これはうまくいきませんでした。私はJetBrainsのWebstorm(黒板テーマ)を使用しています。 'beforeEach'と' afterEach'の両方が灰色に見えていたら、プロジェクトのどこにも使われていないことを意味します。しかし、今私が「前」と「後」を試しているときに緑色に見えるときは、どこかで使用されていることを意味します。しかし、それらのどれもまだ実行されません。 'git'に載っているnightwatch.jsのサンプルプロジェクトには、それらの実装がありますか? – paul

+0

@paulでレポをテストと共有できますか? –

+0

あなたは何か "グレー"/"グリーン"でコードが使用されているかどうかを確認する必要はありません - 実行/デバッグでそれを確認してください、WebStormはクールですが、間違っているものです –

関連する問題