首页 > 解决方案 > Node.js Jasmine helpers onComplete

问题描述

I want to set up a callback to run after jasmine has completed all tasks.

This is what I've tried:

package.json

{
  "scripts": {
    "test": "jasmine"
  }
  ...
     "jasmine": "^2.8.0"
}

spec/support/jasmine.json

{
  "helpers": [
    "helpers/env.js",
    "helpers/**/*.js"
  ],
  ...
}

spec/helpers/env.js

jasmine.onComplete( () => console.log('yay, done') )

but keep on getting errors

$ npm test
...
jasmine.onComplete( () => console.log('yay, done') )
    ^
TypeError: jasmine.onComplete is not a function
...

标签: node.jsjasmine

解决方案


它似乎,

你不会初始化 Jasmine。

var Jasmine = require('jasmine');
var jasmine = new Jasmine();

参考这个

然后这应该工作:

jasmine.onComplete(function(passed) {
  if(passed) {
    console.log('All specs have passed');
  }
  else {
    console.log('At least one spec has failed');
  }
});

推荐阅读