【问题标题】:Can I use a baseUrl like this in protractor?我可以在量角器中使用这样的 baseUrl 吗?
【发布时间】:2019-10-07 08:12:28
【问题描述】:

我正在尝试测试 baseUrl 为 https://clarity.design/news 的 SPA,但是当我尝试导航到特定页面(例如 1.3.1)时,URL 将是 https://clarity.design/1.3.1 不能被发现。它似乎覆盖了 URL 中的新闻部分。 这是我的配置:

exports.config = {
    baseUrl: 'https://clarity.design/news',
    seleniumAddress: 'http://localhost:4444/wd/hub',
    specs: ['first-spec.js']
}

规格是

describe('Test', () => {
    beforeAll(async () => {
        await browser.get("/1.3.1");
    })
    it('should return home page title correctly', async () => {
        await browser.sleep(5000);
        expect(await browser.getTitle()).toContain('Page Not Found');
    });
});

那么,是否可以像 config 中的那样使用 baseUrl?

附:修改了测试,可以认为是通过了。

【问题讨论】:

    标签: angular testing protractor


    【解决方案1】:

    解决问题的方法很多,但如果我是你,我会走这条路

    exports.config = {
        baseUrl: 'https://clarity.design/news',
        seleniumAddress: 'http://localhost:4444/wd/hub',
        specs: ['first-spec.js']
    }
    

    然后明确说出你想去的地方

    await browser.get("/news");
    // or
    await browser.get("/1.3.1");
    

    【讨论】:

      【解决方案2】:

      试试下面这个

      await browser.get(browser.baseUrl); //This will get your base URL
      

      希望对你有帮助

      【讨论】:

        【解决方案3】:

        使用browser.baseUrl

        let myUrl = browser.baseUrl + "/1.3.1" browser.get(myUrl)

        我想你可以用更复杂的方式来做,但我希望你明白了

        【讨论】:

        • 量角器浏览器中没有browser.params.baseUrl,但我要使用browser.baseUrl。谢谢你的回答。
        • @specialdoom 谢谢(从我的代码中复制粘贴)。我已经编辑了答案
        猜你喜欢
        • 2015-10-12
        • 2014-06-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-11
        • 1970-01-01
        相关资源
        最近更新 更多