Cypress, как выбрать вариант, содержащий текст - PullRequest
0 голосов
/ 07 сентября 2018

В Cypress команда select('option-text') будет работать только при точном совпадении. Как я могу сказать ему, чтобы выбрать параметр, который содержит текст вместо?

1 Ответ

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

Я не нашел ничего подобного ни в API, ни в проблемах с GitHub.

Поэтому я прибегнул к добавлению пользовательской команды в мой проект:

// cypress/support/commands.ts
Cypress.Commands.add('selectContaining', {prevSubject: 'element'}, (subject, text, options) => {
  return cy.wrap(subject).contains('option', text, options).then(
    option => cy.get('select#report-selection').select(option.text().trim())
  );
});
// cypress/support/commands_type.ts
declare namespace Cypress {
  interface Chainable<Subject = any> {
    requestApi(method: HttpMethod, url: string, body?: RequestBody): Chainable<Cypress.Response>;
    selectContaining(text: string | string[], options?: Partial<SelectOptions>): Chainable<Subject>;
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...