【问题标题】:Protractor how to wait until browser.get to a url量角器如何等到 browser.get 到一个 url
【发布时间】:2019-08-16 19:22:59
【问题描述】:
    await browser.wait(function() {
        return browser.getCurrentUrl().then(function(url) {
          return `cars/detail.aspx${browser.baseUrl}`;
        });
      }, 5000, "url err"); 

如何让量角器等到 cars/detail.aspx${browser.baseUrl} 被加载?

【问题讨论】:

    标签: selenium protractor e2e-testing


    【解决方案1】:

    我认为您可以在量角器中使用 urlContains 预期条件来等到 url 包含特定内容。可以参考文档here

    【讨论】:

      【解决方案2】:

      我正在使用这种方法,也许会有所帮助

      export function waitForUrlContains(url: string, customTimeout: number = E2E_TIMEOUT) {
          return browser.getCurrentUrl().then(myUrl => {
            return browser.wait(protractor.ExpectedConditions.urlContains(url), customTimeout, `URL do not contain: ${url}, and is: ${myUrl}`);
          });
        }
      

      【讨论】:

        【解决方案3】:

        您可以阅读 Protractor 的 API 文档以获取有关等待元素(在本例中为 url)的不同方式的更多信息https://www.protractortest.org/#/api
        你实际上有两种方法:

        const EC = protractor.ExpectedConditions;
        const myUrl = 'cars/detail.aspx${browser.baseUrl}';  
        

        然后:

        return browser.wait(EC.urlIs(myUrl));
        

        return browser.wait(EC.urlContains(myUrl));
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-12-13
          • 2018-03-03
          • 2018-06-25
          • 2016-03-25
          • 1970-01-01
          相关资源
          最近更新 更多