如何告诉量角器全局使用baseUrl中的哈希?

时间:2018-11-02 00:16:26

标签: angular protractor angular-test

当前,在我的Angular应用中以及运行时启用了HashLocationStrategy

  expect(browser.getCurrentUrl()).toBe(browser.baseUrl + '/login');

在我的e2e规范中,我收到以下错误:

  

是否有一种方法可以告诉量角器全局使用baseUrl中的哈希后缀?

1 个答案:

答案 0 :(得分:1)

您可以在配置文件中定义 baseUrl ,或者从命令行或 Jenkins 传递参数,以便所有规范都可以使用它。

exports.config = {
    seleniumServerJar: '../../node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.11.0.jar',
    specs: ['../spec/*.js'],
    framework:'jasmine2',
    baseUrl: "http://localhost:49152/#/"
}

并且可以检查期望,

expect(browser.getCurrentUrl()).toBe(browser.baseUrl + 'login');
expect(browser.getCurrentUrl()).toContain(browser.baseUrl + 'login');

或者,如果您从命令行传递参数,

protractor --baseUrl='http://localhost:49152/#/' protractor.conf.js