如果npmtesting失败,npm posttest不会触发

testing失败时,有没有办法触发npm的posttest? 如果package.json包含

"scripts": { "pretest": "echo pretest", "test": "some_failed_test_or_error", "posttest": "echo posttest" } 

$ npm test将回显“前测”,但不是“后测”。

即使mocha不触发任何exception(只是一些简单的失败assert(true==false) ),我也会得到相同的行为,如果我使用mocha并且testing失败。

我正在启动一个预testing资源,我想杀死posttest的资源,testing本身是否通过或失败。

MacOS OS X 10.9.4,npm版本1.4.21,节点v0.10.30。

解决了。 不知道以下内容将在Windows中工作。 bash || 操作符后跟一个空的注释:改变退出代码。

例如,使用摩卡:

 "scripts": { "pretest": "echo pretest", "test": "mocha || :", "posttest": "echo posttest" }