.text () метод возвращает [объект Object] вместо текста в cypress test - PullRequest
0 голосов
/ 09 мая 2020

const person = cy.get ('div.global-user-nav-menu> div> div> div> div.info-container> div.display-name'). Text () // должен сохранять текст в переменная "person"

Я хочу использовать эту переменную "person" в качестве аргумента функции

SpaceView.assignTo (person)

1 Ответ

1 голос
/ 09 мая 2020

Архитектура Cypress работает с цепочкой обещаний, и вы не можете разорвать цепочку и вернуть из нее значения ... Вы должны связать возвращаемые значения и действовать в соответствии с этим. Он не работает, как метод selenium getText () :) Итак, ваш оператор ниже не будет работать.

const personName = cy.get(`div.global-user-nav-menu > div > div > div > div.info-container > div.display-name`).text();
SpaceView.assignTo(personName);

Итак, вам нужно построить, как показано ниже, чтобы он работал

cy.get(`div.global-user-nav-menu > div > div > div > div.info-container > div.display-name`).then(element => {
      SpaceView.assignTo(element.text());
    });

(или)

    return cy.get(`div.global-user-nav-menu > div > div > div > div.info-container > div.display-name`).then(ele => {
      return ele.text()
    }).then(personName => {
      SpaceView.assignTo(personName);
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...