我开始测试Angular2项目,我想在某些测试中检索浏览器的URL,以检查重定向是否正确。
问题是,我在API中可以看到的唯一检索当前URL的方法是webdriver.WebDriver.getCurrentUrl,但它返回绝对路径。如果由于某种原因您将来更改测试端口或主机名,这可能会很痛苦。有没有办法像browser.get一样只检索相对URL?感谢。
答案 0 :(得分:4)
为了简单起见 - 处理将来对主持人的更改port,你可以这样做。
expect(browser.getCurrentUrl()).toContain("/some/path/resource");
答案 1 :(得分:0)
我不确定是否有相同的内置方法。
假设有一个URL
,例如
http://example.com/some/path/resource
您也可以使用以下代码
browser.executeScript("return '/' + window.location.href.split('/').slice(3).join('/');")
得到
/some/path/resource
或
browser.executeScript("return window.location.href.split('/')[window.location.href.split('/').length -1];")
获取
resource