目前,HashLocationStrategy 在我的 Angular 应用程序中启用,当我运行时
expect(browser.getCurrentUrl()).toBe(browser.baseUrl + '/login');
在我的 e2e 规范中,我收到以下错误:
- 预期 ' http://localhost:49152/#/login ' 是 ' http://localhost:49152/login '。
有没有办法告诉量角器在baseUrl全局范围内使用哈希后缀?
目前,HashLocationStrategy 在我的 Angular 应用程序中启用,当我运行时
expect(browser.getCurrentUrl()).toBe(browser.baseUrl + '/login');
在我的 e2e 规范中,我收到以下错误:
- 预期 ' http://localhost:49152/#/login ' 是 ' http://localhost:49152/login '。
有没有办法告诉量角器在baseUrl全局范围内使用哈希后缀?
您可以在配置文件中定义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