Почему я не могу отобразить доступные вехи в новой форме выпуска в Chrome (кипарис)? - PullRequest
0 голосов
/ 18 сентября 2018

Я пишу тест, который использует github для создания примера проблемы с вехой.

Когда я вручную тестирую его в Chrome, я вижу доступную веху:

enter image description here

Однако, когда я запускаю тестирование в среде Cypress, я вижу:

enter image description here

I 'm щелкнув заголовок раздела Milestone (боковая панель):

cy.get('.sidebar-milestone > .js-issue-sidebar-form > .details-reset > .text-bold').click()

Я заметил сообщение в журнале Cypress Browser:

Не удалось найти действительный дайджест в 'целостности''атрибут для ресурса' https://assets -cdn.github.com / assets / github-ed9a6ebff11490e3b6a311cb47b71cae.js 'с вычисленной целостностью SHA-256' iFmDof4l / ZHJ + J0GQf5D37I57MPxzgEH21g1g2g1g2g1g2x1g2x1g2x1g2x1g2x1g2x1g2x1g2x1g2x1g2x1g2x1eg1Ресурс заблокирован.

Я не заметил никаких ошибок при ручном тестировании (автономный запуск Chrome)

Для ручного и e2e (кипарисного) тестирования я использую одно и то жебраузер: Chrome 68 (OSX).

Полный код теста:

describe('Test whether kanban board working', function() {
  it('Visits the board', function() {

    cy.visit('https://github.com/login')
    cy.get('#login_field').type('ACCOUNT_NAME')
    cy.get('#password').type('PASSWORD')
    cy.get('.btn').click()

    cy.request({
      url: 'https://github.com/ACCOUNT_NAME/REPOSITORY_NAME/issues/new',
    })
    .then((resp) => {
      // redirect status code is 302
      expect(resp.status).to.eq(200)
    })

    cy.visit('https://github.com/ACCOUNT_NAME/REPOSITORY_NAME/issues/new')
    cy.get('#issue_title').type('New issue ' + Math.floor((Math.random() * 1000) + 1))
    cy.get('.sidebar-milestone > .js-issue-sidebar-form > .details-reset > .text-bold').click()
  })
})

1 Ответ

0 голосов
/ 21 сентября 2018

Здесь я с репозиторием, где я сравнил Cypress с Puppeteer и TestCafè, потому что поведение кажется действительно странным ...

Я думаю, что проблема связана с каким-то странным управлением мышью Cypress, потому что на Puppeteer иTestCafè все работает отлично.

См. хранилище И скриншот, который их сравнивает

comparison

[ПРАВИТЬ]

Затем я попытался записывать все события мыши, происходящие на странице, в результате получается следующее:

TestCafè

mouseover ... mousemove ... mousemove ..mousedown ... mouseup ... click ...

Puppeteer

mouseover… mousemove… mousedown… mouseup…Нажмите…

Cypress

mousedown ... mouseup ... нажмите

(см. Полный журнал на моем репо-страница )

Как вы можете видеть, вообще нет событий перемещения мыши ...

Я обнаружил открытую проблему, которая может быть связана ... Я создам выделенное (и более простое) хранилище, прежде чем отправлять им проблему.

...