我想弄清楚为什么这个测试运行两次:
it ( "should verify file exists with a one name filename ", function ( done ){
var fileNameOneChar = "/Users/myusername/t.mp3";
console.log(" the file path ", fileNameOneChar );
expect( myApi.fileExists( fileNameOneChar ) ).to.be( true );
done();
});
测试连续两次运行(虽然它只定义了一次)第一次通过(这没关系,该文件实际存在并且api工作正常),第二次失败并出现错误:错误:超过5000毫秒超时“。
为什么测试运行两次?我现在已经看了很久以前的时间错误了一段时间,还没有在摩卡上找到任何东西。
答案 0 :(得分:4)
几分钟前我发生了同样的情况,我发现了一种解决方法(不是修复):在同步模式下运行测试。
基本上,您需要避免设置 it 方法
的done参数下面是我的测试现在的样子
describe('API /users Endpoint', function () {
it('GET /users should return a JSON list of users', function (done) {
request
.get(config.api.prefix+'users')
.set('bearer',config.api.key)
.end(function(err,res){
if (err) {
return done(err);
}
res.statusCode.should.equal(200);
res.body.should.not.be(null);
res.body.posts.should.not.be(undefined);
res.body.posts.should.not.have.length(0);
});
});
希望它有所帮助!