I`ve got a simple nightwatch test. I need to click some element inside iframe, but I have an error 'expected "visible" but got: "not found"'.
.waitForElementVisible(".my_iframe", 30000) // this is work correctly
.pause(5000)
.frame('my_iframe') // I understood that it is needed to go inside iframe
.waitForElementVisible("card_input", 5000)
.frame(null)
Element card_input is not visible. How can I work with elements inside iframe?
Your selector ".my_iframe" indicates a class. You should be using some more unique selector, like an id. You can also use the iframe index. if that is the first and only iframe on the page, try this:
.waitForElementVisible("iframe", 30000) // long timeout, but whatever.
.pause(5000) // another long timeout.
.frame(0) // zero indexed: if 1st iframe on this page, 0 should work.
.waitForElementVisible("card_input", 5000)
.frame(null)
https://cmsdk.com/javascript/nightwatch--cant-click-element-in-iframe.html