我有一个针对当前应用的测试套件。
有时我会引入错误,这会导致抛出未捕获的异常。
手动运行单元测试时,我可以看到错误。但是当我将它与我们的CI系统集成时,该过程仍然会返回0,就好像一切正常。
由于这个积极的退出代码,我们无法检测到错误。我做错了什么?
答案 0 :(得分:3)
由于nodeJS域名,我终于解决了这个问题:
这是我的test / server.coffee,我在其中设置了测试:
d = require("domain").create()
# set up error handling to exit with error code on uncaught exceptions
d.on "error", (err) ->
console.log "Uncaught Exception:", err.message
console.log err.stack
process.exit(1)
before (done) ->
d.run ->
# bootstrap application
done()
这会捕获所有错误,打印跟踪并以退出状态1退出。