2014-01-26 36 views
4

我相信我在這裏錯過了一些明顯的東西!如何使用摩卡創建自定義記者

我已閱讀此處的說明(https://github.com/visionmedia/mocha/wiki/Third-party-reporters),並已將其代碼添加爲新節點模塊(即它位於node_modules/my-reporter/reporter.js內)。但是,我似乎無法讓摩卡加載這位記者。

我已經試過許多變化...

mocha allTests.js -R ./node_modules/my-reporter/reporter.js 

mocha allTests.js -R my-reporter 

但沒有任何工程:-(

我可以成功加載JS文件中我的記者:

my_reporter = require('./node_modules/my-reporter/reporter.js') 
console.log(my_reporter); 

有沒有人有任何提示?

+0

你有沒有遇到錯誤,或者只是在沒有使用記者的情況下出現? – Louis

回答

3

看來,如果摩卡全球安裝(我相信它大多數情況是),你必須以同樣的方式安裝你的記者。

如果你不希望發佈的記者作爲公共模塊,你可以:

npm pack 
npm install /path/to/your/module.gz -g 

我試圖把記者在其他地方,將是有意義的,但會出現「無效的記者「除非它在全球範圍內安裝。

+0

謝謝TPresley。我不得不尋找這個信息2小時..稍後將嘗試摩卡的本地安裝,以查看如何平移。 –

+0

您可以使用'which'來查找二進制文件的路徑。在終端運行'哪個mocha'會爲我返回'/ usr/local/bin/mocha' –

6

ü應提供記者這樣的:

mocha allTests.js -R './node_modules/my-reporter/reporter' 

你不應該提供.js文件擴展名,因爲這是對包括模塊通常慣例。

相關問題