【问题标题】:Protractor error - Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves量角器错误 - 错误:超过 2000 毫秒的超时。对于异步测试和钩子,确保调用了“done()”;如果返回一个 Promise,确保它解决
【发布时间】:2019-09-28 06:36:14
【问题描述】:

我正在学习量角器,但我遇到了“Promise”错误的问题。我读过Mocha testing with promises: Error: Timeout of 2000ms exceededhttps://github.com/angular/protractor/blob/master/docs/control-flow.md#disabling-the-control-flow,但我仍然停留在这个简单的代码中。

基本上,如果我添加该行 element(by.css(gotograb_css)).click();

会有错误 错误:超过 2000 毫秒的超时。对于异步测试和钩子,确保调用“done()”;如果返回一个 Promise,请确保它解析。

我要在这之后添加一个 .then () 吗?我试过了,即使脚本末尾的 done() 错误仍然存​​在。

我在 config.js 中的量角器测试框架是 mochai

背景 1.元素 css 是正确的,因为我可以在 Selenium / Java 中运行它。

  1. 我试试这个
it("testing site", (done)=> {

 .......
   done();
})

这也行不通。同样的错误

var title_css = "h1[ng-bind='::$ctrl.primaryText']";
var gotograb_css = "a[ng-bind='::$ctrl.linkoutText']";

  it("testing site", ()=> {

    browser.get('https://www.eat24.com/');

    let EC = protractor.ExpectedConditions; // 
    let title_element = element(by.css(title_css)); 
    let condition = EC.presenceOf(title_element);
    browser.wait(condition, 30000)
    element(by.css(gotograb_css)).click(); //ERROR 

  })

【问题讨论】:

    标签: protractor


    【解决方案1】:

    我认为问题在于 browser.wait 函数没有得到解决。
    试试这个:

        let condition = EC.presenceOf(title_element);
        return browser.wait(condition, 30000)
            .then(function () {
                return element(by.css(gotograb_css)).click();
            });        
    

    【讨论】:

      【解决方案2】:

      您的配置中似乎将全局超时设置为 2000 ms。

      发生的情况是您尝试等待最多 30 秒,这显然超过了您的全局超时时间。

      所以只要打开配置看看是不是这样

      【讨论】:

      • 我在这里添加了超时。问题不是这个。谢谢
      【解决方案3】:

      如果您正在使用 mocha,您可能需要禁用超时添加到配置文件中,如下所示:

        mochaOpts: {
          enableTimeouts: false
        },
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-06-14
        • 2020-05-12
        • 2018-06-07
        • 2019-07-24
        • 2018-07-02
        • 2019-06-24
        • 2017-10-24
        • 1970-01-01
        相关资源
        最近更新 更多