После нажатия кнопки мое приложение открывает новое окно. Мне нужно перейти в последнее окно. В настоящее время я использую этот подход (я добавил команду к командам Cypress. js файл), чтобы открыть URL-адрес в новом окне, но я не знаю, как изменить его, чтобы решить мою текущую проблему.
Cypress.Commands.add('openWindow', (url, features) => {
const w = Cypress.config('viewportWidth')
const h = Cypress.config('viewportHeight')
if (!features) {
features = `width=${w}, height=${h}`
}
console.log('openWindow %s "%s"', url, features)
return new Promise(resolve => {
if (window.top.aut) {
console.log('window exists already')
window.top.aut.close()
}
// https://developer.mozilla.org/en-US/docs/Web/API/Window/open
window.top.aut = window.top.open(url, 'aut', features)
// letting page enough time to load and set "document.domain = localhost"
// so we can access it
setTimeout(() => {
cy.state('document', window.top.aut.document);
cy.state('window', window.top.aut);
resolve()
}, 500)
}) })
Есть ли обходной путь для переключения между windows в Cypress?