我最近正在浏览量角器API,并注意到该browser.call()方法:
browser.call()
调度命令以在webdriver的控制流上下文中执行自定义功能。
我想将此功能添加到我的工具箱中,但是我不确定我完全了解何时可以在实践中使用它,以及它涵盖哪些用例?
量角器的工作方式是有一个内部队列,在其中设置函数的顺序。因此,如果您要在测试中的某个地方调用某个函数而不告诉量角器,则该函数将不在队列中,并且该函数的实际执行可能随时发生。您可以console.log("something")在测试中使用进行检查,看看它们没有按照编写应用程序的顺序执行。
console.log("something")
如果您希望某个函数在webdriver事件之后专门运行(这意味着您要将其添加到队列中),则可以browser.call()像这样在内部调用它
browser.previousStep(); browser.call(functionX, this, parameters...) browser.nextStep()
该this参数表示:
this
在其范围内执行功能的this 对象(即功能的对象)。
如文档中所述。