Cypress Automation: проблема выполнения на основе домена Javascript - PullRequest
0 голосов
/ 17 января 2020

Возникла проблема при тестировании на Cypress. Проблема: файл JS не загружается во время тестирования с использованием Cypress.

  • Добавлена ​​проверка для загрузки JS файла , когда одно из свойств окна имеет значение набор.
  • Cypress открывает запрошенный URL в iframes, который имеет свой собственный объект окна. Таким образом, фактический объект окна сайта отличается, и объект окна Cypress отличается.
  • В связи с этим JS файл не загружается в браузер Cypress.
  • Свойство окна, необходимое для загрузки файла JS возвращает значение как «неопределенное», потому что Cypress запускает сайт в своем собственном фрейме, который имеет собственный оконный объект.

Решения Мы попробовали: что все еще не работает. - Мы попытались установить свойство объекта окна из самого теста. - Также попытался добавить "chromeWebSecurity": false в файл конфигурации.


describe(‘ExampleTest’, () => {
    it('Verify test’, () => {

    cy.visit(Cypress.config().baseUrl )
    cy.login(email, password)

    parent.window.GLOBAL_VAR = true 
    window.GLOBAL_VAR  = true
    parent.window.frames[0].window.GLOBAL_VAR = true
    parent.window.frames[1].window.GLOBAL_VAR= true

    cy.window().then((window) => {
        window.GLOBAL_VAR  = true
        window.frames[0].window.GLOBAL_VAR = true
    }
}

Примечание: - GLOBAL_VAR - это свойство, которое остается неопределенным внутри фреймов. - Свойство родительского окна установлено в true, но его свойство окна фрейма остается неопределенным. И Cypress открывает запрошенный URL в кадрах. Таким образом, он не устанавливает свойства окна. Который в свою очередь не загружает JS.

Окно иерархии

...