Node.js 如何使用量角器验证HTML属性是否包含绝对URL或相对URL?

Node.js 如何使用量角器验证HTML属性是否包含绝对URL或相对URL?,node.js,protractor,Node.js,Protractor,我正在使用量角器测试web应用程序,我注意到每当我尝试读取hrefattibute时,量角器都会将该值视为绝对URL。这使我无法验证应用程序呈现的URL是否确实是绝对的 假设我想要一个绝对URL,包括我的元标记中的域: <link rel="next" href="https://www.example.com/path-to-page"> 产量https://www.example.com/path-to-page而不是/path to page,这是使用浏览器或curl查看页面

我正在使用量角器测试web应用程序,我注意到每当我尝试读取
href
attibute时,量角器都会将该值视为绝对URL。这使我无法验证应用程序呈现的URL是否确实是绝对的

假设我想要一个绝对URL,包括我的元标记中的域:

<link rel="next" href="https://www.example.com/path-to-page">
产量<代码>https://www.example.com/path-to-page而不是
/path to page
,这是使用浏览器或
curl
查看页面源代码时的实际值

我觉得这种方法过于热心。它可以隐藏实际的bug。这是一个bug还是一个特性?获取属性中存在的实际路径的最佳方法是什么

我已经找到了,但它以一条评论结束,这条评论建议记者在堆栈溢出问题上寻求帮助


请记住,我不只是想检查URL的路径部分。我想确认该属性确实包含所有内容。协议、域和路径。如果我的后端以不同的方式呈现它,量角器仍然会假装它是正确的,因为它根据页面的上下文计算出域。

使用
浏览器.executeScript()使用Javascript将提供实际的href,而不是量角器(恼人地)解析的完整链接。
例如:

let elem = element(by.css('link[rel="next"]'));
let url = await browser.executeScript('return arguments[0].getAttribute("href");',elem);
element(by.css('link[rel="next"]')).getAttribute('href')
let elem = element(by.css('link[rel="next"]'));
let url = await browser.executeScript('return arguments[0].getAttribute("href");',elem);