我在Node js中有一个测试脚本,理想情况下应该按顺序运行。有些功能不返回任何东西,只是执行某些操作,如导航到菜单或按键。另外,在我的测试中,我正在进行GET和POST请求。因为有时如果我有10个步骤并且请求是第5步,有时步骤6和7在5之前执行。我明白我应该使用promises或回调。但我不确定如何在不返回任何东西的函数中使用它们。 这是我的代码看起来像
browser.url(browser.options.baseUrl);
browser.waitForVisible(myLibraryPO.pageTitle, 15000, false);
let token = getTokenFromLocalStorage()
settingsPO.resetProgram(token); // POST call
browser.refresh();
guidePO.launchA();
guidePO.launchB();
guidePO.filter('NEWS');
guidePO.switchToC();
verifySettings(token,'NEWS'); // GET call
答案 0 :(得分:0)
完成执行功能后,您只需致电resolve()
或reject()
。
doSomething() {
return new Promise((resolve, reject) => {
//do some stuff...
if(done) {
resolve();
}
//call reject if something isn't right
reject('something went wrong');
});
}
调用doSomething
看起来像这样:
doSomething().then(() => {
//you did something and returned an empty promise
});
或
await doSomething();