我想捕获生成的 href 的字符串表示形式,并在我导航到的后续页面中使用它。
我尝试使用 cy.get()、cy.find() 等捕获 anchor ,以便稍后可以单击()它,但显然该链接在离开页面后就会变得陈旧。我尝试链接到 then(),我也尝试使用 .getAttribute(),但我得到一个对象而不是字符串。
我正在努力寻找一种方法来获取 cypress 对象的底层值,甚至调用 cy.document() 返回一个 cypress 表示,而不是我直观地猜测的THE DOM 文档。显然,我不知道 Cypress 在做什么,也不知道框架的意见有多少线索,除了我感觉我正在尝试实现一些 Cypress 反模式。
我并不关心如何实现,但我想捕获生成的 url,我可以在页面中的 anchor 标记 href 中找到该 url。请有人建议我如何捕获字符串值,以便我稍后可以在 cy.request() 中使用它?
如果需要,我可以稍后在我的计算机前发布一些示例,但我怀疑我的描述已经足够,但请让我知道。
示例:
describe('Test Description', function () {
var capturedHref = "";
before(function() {
// can set the name here, it becomes the context text on an anchor
generateLinkViaAppFunctionality();
// find by the content text taken from name on link generation
capturedHref = <href from link>
}
it('Test', function() {
cy.visit('some app page');
doStuff();
cy.visit(capturedHref);
})
}
最佳答案
这对你有用吗?我使用cypress文档中的anchor进行测试。
describe('Test anchor link', function(){
it('test', function(){
let anchorlink = '';
let url = 'https://docs.cypress.io/guides/overview/why-cypress.html#Who-uses-Cypress';
cy.visit(url);
cy.get('#Cypress-ecosystem > a').then(($anchorlink)=>{
anchorlink = $anchorlink.prop('href');
console.log(anchorlink);
})
});
});
您可以稍后使用它。
关于javascript - Cypress 捕获 href 字符串以在以后的请求中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58382095/