Node.js 量角器配置onPrepare方法进行异步调用。如何阻止测试启动?
我的量角器配置文件需要执行一些异步工作(例如,下载库和额外的文件系统准备)。如何强制量角器阻塞,直到所有这些异步工作完成 以下是我所拥有和需要的简化:Node.js 量角器配置onPrepare方法进行异步调用。如何阻止测试启动?,node.js,protractor,Node.js,Protractor,我的量角器配置文件需要执行一些异步工作(例如,下载库和额外的文件系统准备)。如何强制量角器阻塞,直到所有这些异步工作完成 以下是我所拥有和需要的简化: var fs = require('fs'); var http = require('http'); exports.config = { onPrepare: function () { if (noPreparationNeeded()) { return; }
var fs = require('fs');
var http = require('http');
exports.config = {
onPrepare: function () {
if (noPreparationNeeded()) {
return;
}
http.get('http://mydriver.company.com', function(res) {
res.on('data', function(data) {
file.write(data);
}).on('end', function() {
file.end();
console.log('Driver download complete');
});
})
}
};
目前,测试将在下载完成之前开始。我该如何防止这种情况发生?你需要q来回报你的承诺。以下是一个例子:
Neato!这正是我需要的。谢谢。
onPrepare:function(){return q.fcall(function(){browser.params.password='12345';}).delay(1000);}
。在这里复制答案,以防原始要点消失。