运行 异步测试时出错
Error while running async test
我使用以下代码作为 mocha 测试,但出现错误“"before all" hook failed”
我使用了之前的事件,但不确定我在这里做错了什么,知道吗?
当我将 BP 放在 JSON.parse 上进行调试时,它不会在...
之后停止
describe("Validations", function () {
before(function (done) {
var valid = require('../utils/valid');
_provideConfig()
.then(function (config) {
isValidURL = valid.url(config, "test2")
done();
}).done();
});
it("Validate URL ", function () {
expect(isValidURL).to.be.true;
});
});
_provideConfig = function () {
return new Promise(function (resolve, reject) {
var configJSON = {
"providers": [
{
"replace": {
"path": "cmd1",
"inc": "upd"
},
"save": {
"path": "test2",
"inc": "upd2"
}
}
]
};
var config = JSON.parse(configJSON);
console.log(config);
resolve(config);
});
您必须删除 done
回调,只删除 return 承诺。
before(function () {
var valid = require('../utils/valid');
return _provideConfig()
.then(function (config) {
isValidURL = valid.url(config, "test2");
});
});
当它在文档中说 Mocha 支持承诺时,这意味着您必须 return 承诺以便 Mocha 可以处理它。
我使用以下代码作为 mocha 测试,但出现错误“"before all" hook failed”
我使用了之前的事件,但不确定我在这里做错了什么,知道吗? 当我将 BP 放在 JSON.parse 上进行调试时,它不会在...
之后停止describe("Validations", function () {
before(function (done) {
var valid = require('../utils/valid');
_provideConfig()
.then(function (config) {
isValidURL = valid.url(config, "test2")
done();
}).done();
});
it("Validate URL ", function () {
expect(isValidURL).to.be.true;
});
});
_provideConfig = function () {
return new Promise(function (resolve, reject) {
var configJSON = {
"providers": [
{
"replace": {
"path": "cmd1",
"inc": "upd"
},
"save": {
"path": "test2",
"inc": "upd2"
}
}
]
};
var config = JSON.parse(configJSON);
console.log(config);
resolve(config);
});
您必须删除 done
回调,只删除 return 承诺。
before(function () {
var valid = require('../utils/valid');
return _provideConfig()
.then(function (config) {
isValidURL = valid.url(config, "test2");
});
});
当它在文档中说 Mocha 支持承诺时,这意味着您必须 return 承诺以便 Mocha 可以处理它。