我很难得到一个直接的答案,以最好的方式来编写使用Selenium自定义然后功能(在JavaScript中)。我读了整个ControlFlow实现是基于承诺,所以我错误地假设,只是包括当时能够commmands建设中的承诺将是罚款:硒WebDriver ControlFlow执行
driver.findElement(By.css(""))
functionThatReturnsPromise()
driver.findOtherElement()
到现在为止,我一直在做,这是什么:
function() {
return controlflow.execute(function() {
return new Promise(function(resolve, reject) {
// ...some logic here
resolve()
});
});
}
哪些工作过,但这里没有必要做两件事之一:(本地)Promise或ControlFlow。我知道这不是ControlFlow,因为只是承诺事情不按顺序执行。
看起来,任何正常的功能传递给ControlFlow允许这个按预期工作。那时,我发现一个问题出来说ControlFlow在将来的版本中被弃用:
https://github.com/SeleniumHQ/selenium/issues/2969
如果我不应该使用ControFlow,那我应该被用来创建当时能够自定义函数会顺序执行吗?