2015-12-22 76 views
2

有沒有類似於time-grunt的方式測量npm腳本的性能的方法?npm腳本的時序/性能指標

我正在將一些關鍵構建任務移至使用npm而不是Grunt,因爲編寫自己的構建腳本比使用grunt-browserify等一些Grunt插件更靈活。

我嘗試過使用console.time(),但它在腳本完成之前完成,我假設因爲這些方法是異步的。我也試過運行故宮腳本作爲步兵的任務是這樣的:

grunt.registerTask('collectify', function() { 
    grunt.util.spawn({ 
     cmd: 'npm', 
     args: ['run', 'collectify:app'] 
    }); 
}); 

但產量比,如果我在命令行中運行npm run collectify:app,也許是因爲PWD問題不同。

彩條會很好,但至少我希望看到時間的數字。

回答

1

你最好的選擇可能是在[foo]和post [foo]腳本之前。

所以,如果我有一個名爲「foobar的」一個NPM腳本,那麼我就可以創建一個名爲「preboofar」和「postfoobar」的劇本,他們會自動前和「foobar的」被執行後執行。

因此,在「pre」中,您可以觸摸帶有時間戳的文件,在「後」中,您可以讀取該文件並計算差異。

0

您是否在npm run命令之前嘗試了time命令?

所以,如果您的命令是:

npm run collectify:app

它變成:

time npm run collectify:app

,它會輸出3線如

real 0m11.580s 
user 0m7.400s 
sys  0m1.304s 

讓我知道它是否有幫助!