在 cy.wrap($ doc.find(“#input”))。type(“ test”,{force:true})中不起作用:CypressError:超时重试:预计会找到“未定义”元素,但从未找到。
it('iframe - check it', function () {
cy.visit("https://jsfiddle.net/1w9jpnxo/1/");
cy.get("iframe[name='result']").then($iframe => {
const $doc = $iframe.contents();
cy.wrap($doc.find("#input")).type("test", { force: true });
//cy.wrap($doc.find("#submit")).click({ force: true });
});
})
“ cypress”:“ ^ 3.8.3”
以上是互联网上的常见做法,但对我不起作用。
我还仔细阅读了https://docs.cypress.io/faq/questions/using-cypress-faq.html?#How-do-I-test-elements-inside-an-iframe上的公开提案,但不知道解决方案是什么。
答案 0 :(得分:1)
按照我在此处的答案(Cypress - run test in iframe中的描述,向您的react-native start
添加辅助函数后,可以使用以下方法评估输入是否存在:
cypress/support/commands.js
我不确定是否可以输入,但是您可以尝试:
cy.get('#iframe-id')
.iframe('body #yourInputId')
.should('exist')
让我知道它是否有效,我很好奇。.