Cypress-тестирование: установка непрозрачности для элемента на 0 в приложении React, чтобы скрыть его - PullRequest
0 голосов
/ 25 сентября 2019

Я изо всех сил пытаюсь понять, как установить непрозрачность элемента равной 0, или в любом случае скрыть его, чтобы я мог получить доступ к элементам, которые он скрывает, и предотвратить взаимодействие с Cypress.

Я попробовал нативный .blur (), который поставляется с Cypress, безрезультатно.

Элементом, о котором идет речь, является выпадающий список.Вручную, единственный способ закрыть это - щелкнуть по основному телу страницы.Я хочу нажать на следующее раскрывающееся меню, чтобы оно открывалось и могло делать выбор, но оно «скрыто».

Мой тестовый фрагмент:

it('Select Houses', function () {
cy.selectMainMenu();
clickByLabelText(page, 'Sector')
cy.get(.......
})

it('Select Pricing', function () {
cy.selectMainMenu();
clickByLabelText(page, 'Pricing')
cy.get(........
})

Выпадающая разметка выглядит следующим образом:

<div class="MuiPaper-root MuiMenu-paper MuiPaper- 
elevation8 MuiPopover-paper MuiPaper-rounded" 
role="document" tabindex="-1" style="opacity: 1; 
transform: none; min-width: 200px....>

Мне неясно, как я могу напрямую манипулировать DOM, чтобы установить непрозрачностьв '0' или закомментировать это так:

style="/*opacity: 1; */

Я не верю, что приложение использует JQuery.

Моя ошибка:

CypressError: Timed out retrying: cy.click() failed because this element:

<a class="App_navItem__3Eb6P App_navItemForceFocus__2xkR3" href="/pricing" aria- 
current="page">Pricing</a>

is being covered by another element:

Я пытался использовать {force: true}, чтобы нажать на другое раскрывающееся меню, но без радости.Кроме того, я не вижу, чтобы другие выпадающие списки соответствовали критериям «Скрытый», как указано здесь: https://docs.cypress.io/guides/core-concepts/interacting-with-elements.html#Visibility

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...