WebDriverJS控制流程

时间:2015-06-25 10:55:19

标签: javascript protractor webdriverjs

量角器使用WebDriverJS。

WebDriverJS使用“控制流”的概念来确保以预期的确定性顺序执行异步任务。

所以以下内容将按预期工作:

myElement.click();
browser.executeScript(...);

但是,如果我在浏览器中添加其中一个函数返回的promise的函数,那么一切都会以预期的方式继续工作吗?

例如:

browser.executeScript(...).then(function() {
  browser.navigate(...);
});

是否可以使用上述代码维护控制流程?

1 个答案:

答案 0 :(得分:6)

应该是。它被称为WebDriverJs' documentation中的框架:

flow.execute(function() {
  console.log('a');
}).then(function() {
  flow.execute(function() {
    console.log('c');
  });
});

flow.execute(function() {
  console.log('b');
});

// a
// c
// b