我很難得到一個直接的答案,以最好的方式來編寫使用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,那我應該被用來創建當時能夠自定義函數會順序執行嗎?