【问题标题】:What is `browser.call()` for in Protractor?Protractor 中的 `browser.call()` 是什么?
【发布时间】:2017-04-18 18:20:46
【问题描述】:

我最近正在浏览Protractor API 并注意到browser.call() method

安排一个命令在 webdriver 的控制流上下文中执行一个自定义函数。

我想将此功能添加到我的工具包中,但我不确定我是否完全了解何时可以在实践中使用它以及它涵盖哪些用例?

【问题讨论】:

    标签: javascript selenium testing automation protractor


    【解决方案1】:

    量角器的工作方式是它有一个内部队列,用于设置函数的顺序。因此,如果您要在测试中的某个地方调用一个函数而不告诉量角器,那么该函数将在队列之外,并且该函数的实际执行可能随时发生。 您可以在测试中使用console.log("something") 进行检查,看看它们没有按照应用程序的编写顺序执行。

    如果您希望某个函数在 webdriver 事件之后专门运行(意味着您想将其添加到队列中),您可以像这样在 browser.call() 中调用它

    browser.previousStep();
    browser.call(functionX, this, parameters...)
    browser.nextStep()
    

    this参数代表:

    在其范围内执行函数的对象(即this 函数的对象)。

    如文档中所述。

    【讨论】:

      猜你喜欢
      • 2016-08-20
      • 2020-01-07
      • 1970-01-01
      • 2016-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-21
      相关资源
      最近更新 更多