首页 > 解决方案 > 访问可以使用赛普拉斯重用的当前主题?

问题描述

我在页面上出现的元素很少,带有data-testid属性。

在此处输入图像描述

该属性具有定义它是什么类型的元素的值。我想将属性值用作字符串并希望将其推送到数组中。

我正在做的是-


        cy.xpath(NODE_PREVIEW_PANEL)
             .children(NODE_TYPE)
             .each((el) => {
                 orderArray.push(cy.get(el).invoke('attr', 'data-testid'));
             })

但它没有向数组添加任何东西,而是断言

cy.get(el).invoke('attr', 'data-testid').should('eq', 'Single Column sm')

工作正常。

标签: javascriptjqueryarraysattributescypress

解决方案


您可以执行以下操作,以获取所需属性的值并将其保存在数组中:

cy.xpath(NODE_PREVIEW_PANEL)
  .children(NODE_TYPE)
  .each((el) => {
    cy.wrap(el).invoke('attr', 'data-testid').then((val) => {
      orderArray.push(val);
    })
  })

推荐阅读