Сопоставление классов CSS в Cypress

Еще одна заметка «для себя». Иногда очень трудно понять, как утверждать что-то в различных фреймворках тестирования JS. Сегодня я просто хотел проверить, есть ли у определенного элемента CSS-класс, а поскольку я использую CSS-модули, я не могу использовать «have.class», потому что мне нужно сопоставить имя. Поэтому, согласно документации Cypress, вот как это делается. Обратите внимание, что я также использую библиотеку тестирования Cypress, т.е. часть этого кода «findByText».

        cy.findByText(/english/i).should(($s) => {
          expect($s).to.have.length(1);
          const className = $s[0].className;
          expect(className).to.match(/LanguageList_highlighted/gi);
        });
Вход в полноэкранный режим Выйти из полноэкранного режима

Тбх это кажется немного сложным и, конечно, было бы хорошо, если бы вы могли просто сделать что-то вроде cy.findByText(/english/i).should("match.class", /LanguageList_highlighted/gi). Если кто-то знает более простой способ сделать это, дайте мне знать.

Оцените статью
devanswers.ru
Добавить комментарий