不使用赛普拉斯获取文本内容

时间:2019-02-18 22:48:35

标签: text cypress

使用赛普拉斯,我试图从表中的所有标题元素获取文本,但显示错误

我尝试了文本/内文/ textcontent等相同的问题。

  

CypressError:超时重试:cy.its()错误,因为主题上不存在属性'outerText'。

 cy.wrap($table).find('th').each(($header)=>{
 cy.wrap($header).its('outerText').then((Text)=>{
 cy.log(Text);
})

在这种情况下,我希望文本为性别

enter image description here

这是我cy.wrap产生的对象

cypress runner -subject yeilded

3 个答案:

答案 0 :(得分:1)

我通过使用invoke和.then找到解决方案

现在我正在获取想要的文字     cy.wrap($ header).invoke('text')。then((($ elementvalue)=> {                     cy.log($ elementvalue);

答案 1 :(得分:0)

由于赛普拉斯产生了jquery个实例,因此您需要先对其进行拆包以访问本机dom元素属性:

cy.get('#my-el').should($el => {
  expect($el[0].outerText).to.contain('Gender')
})

答案 2 :(得分:0)

试试这个

 cy.window().then((win) => {
      console.log(
        win.document.querySelector(".minimal_filter_tags").textContent
      );
    });