节点摩卡testing日志保存到磁盘

需要将testinglogging保存到磁盘

我已经尝试了下面的代码

mocha -R spec test/**/*_test.js > report 

假设任何testing用例失败,它不会login到“报告”文件。 请build议最好的方式来loggingtesting报告。

你也应该把stderrredirect到那个日志文件:

 mocha -R spec test/**/*_test.js > report 2>&1 

编辑 :如果你想内容发送到文件控制台:

 mocha -R spec test/**/*_test.js 2>&1 | tee report 

这个问题没有指定日志将被用于什么。 如果您在报告中需要堆栈跟踪,那么您不能使用json-stream因为本报告不包含跟踪。 然而,如果你想要的东西是可以被轻易parsing的东西,只有你关心的是知道testing的状态,而不是为什么他们失败,那么json-stream记者很好地工作:

 $ mocha -R json-stream > report 

你会得到一个经常格式化的行列表:

 ["start",{"total":1}] ["fail",{"title":"q","fullTitle":"blah q"}] ["end",{"suites":1,"tests":1,"passes":0,"pending":0,"failures":1,"start":"2014-01-08T18:10:27.764Z","end":"2014-01-08T18:10:27.768Z","duration":4}] 

那么你可以轻松地grep的失败testing:

 $ grep '^\["fail"' report 

输出也可以传递给一个工具,将其缩小到你想要的格式,并很好地格式化为电子邮件,IM消息或其他东西。 在运行一个testing套件时,我用了这个方法,其中有数千个testing,我最关心的是快速得到失败的列表。