我想知道如何在单击链接后捕获和读取URL。
在click事件中,我们的javascript对实际的<a href>
然后是window.location.href = newURL
进行了一些字符串操作,因此原始href不一定是单击后到达的位置。
这是我的开始方式:
describe("Twitter", function() {
it("Should assert that via value is set correctly in JS", function() {
cy.server();
cy.visit(Cypress.config("appUrl") + "/probes/sha/sha-via.html");
cy.get("#v_test ul.share li a")
.click();
});
});
编辑:我想要捕获位于“页面加载”步骤的URL。
答案 0 :(得分:1)
您应该可以使用cy.on在 url:changed
事件回调中执行assertions:
cy.on("url:changed", (newUrl) => {
expect(newUrl).to.contain("?magic=true")
})
答案 1 :(得分:0)
您可以使用cy.location()
命令,例如:
cy.get("#v_test ul.share li a")
.click();
cy.location('href').should('eq', 'newUrl');
此外,作为cy.location('href')
命令的别名,您可以使用cy.url()
。