我有以下记者
afterLaunch: function (exitCode) {
return new Promise(function (resolve) {
reporter1.afterLaunch(resolve.bind(this, exitCode));
});
return new Promise(function (resolve) {
reporter2.afterLaunch(resolve.bind(this, exitCode));
});
}
上述每个记者都有自己的发布后,一旦执行了ptor.conf文件中的发布后,就会执行该发布。
但显然是因为return new Promise
,第一个报告从那里返回,执行就在那里停止。
如何同时返回两个报告?
答案 0 :(得分:4)
如果您正在操作webdriver承诺,则需要Promise.all()
(或protractor.promise.all()
):
var promise1 = new Promise(function (resolve) {
reporter1.afterLaunch(resolve.bind(this, exitCode));
});
var promise2 = new Promise(function (resolve) {
reporter2.afterLaunch(resolve.bind(this, exitCode));
});
return Promise.all([promise1, promise2]);