2017-07-03 31 views
6

在使用npm init在命令行中創建package.json以在Node.js中創建模塊時,有一個我不知道的測試命令字段。在文檔中也沒有提到它也在CLI中執行npm help json創建package.json時,測試命令是什麼?

請解釋它是什麼。

+0

簡而言之,如果您有一個用於運行測試的流行工具,測試命令可能只是工具的名稱......即「jest」。 – phyatt

回答

5

test command是在您撥打npm test時運行的命令。

與持續集成/連續部署工具(如jenkins,codeship,teamcity)集成時,這非常重要。

例子:
- 說你項目部署到AWS或其他一些雲託管服務提供商,
- 你可以設置你的基礎設施,以自動運行npm test
- 如果這些測試中存在問題,您的ci/cd將在部署前自動回滾。

要執行測試
您可以使用因緣開玩笑,或硒/噩夢/ phantomjs或任何其他測試腳本庫/框架,使您可以編寫和執行測試,然後設置在scripts.test中的所需命令,並最終從npm test運行它。

+0

這裏的函數究竟是什麼意思? –

+1

*從'function'改爲'command'爲' 基本上可以這麼想,比如說你想運行mocha test.js - 每次你想要運行mocha都沒什麼意義。 –

+0

你可以做什麼,它添加npm precommits/postcommits來運行'npm test'以確保您的測試通過 –

3

假設你的意思scripts.test

"scripts" : { 
    "test" : "echo \"Error: no test specified\" && exit 1" 
} 

此字段包含該程序(/命令行)當你調用npm test應該運行。通常情況下,該程序是測試亞軍樣mochaavajest,...

的默認值是打印錯誤消息(嘗試在同一目錄下運行npm test爲您package.json)的佔位符。