回到父元素 - CSS Cypress 中的选择器

Go back to parent element - CSS selector in Cypress

有人可以协助处理以下情况:

我必须检查 if 语句是否存在元素。由于不可能在 find 命令中使用 Xpath (当 运行 使用 Xpath 时抛出语法错误)。

我的代码看起来:

cy.xpath(list)
    .eq(index)
    .then(($el1) => {
      cy.get('body').then((body) => {
        if (
          body.find(
            currentBase +
              currentTitle[index] +
              currentExtension
          ).length > 0
        ) {
     ...

其中 currentBase 是文本之前的 Xpath,currentText - 带有文本的元素和 currentExtension 是连接以获取该文本元素下方的元素。 我不想使用那些 类 因为它们是动态的(而且,在不久的将来不能用一些独特的属性来改变)

并且DOM看起来:

即很容易找到标记为img的元素,但是跟在CSS后面就不行了

#structures img[src*="/static/media/image"].$('..').$('..').$('..') div:nth-child(2)

我想要的是,在带有文本元素一

的元素下方找到div

我做错了什么? 或者在 Cypress 中是否有其他方法可以一起使用 if 语句并在找不到元素时通过该步骤? 提前谢谢你

你可以这样做。这将为您提供 Element One 正下方的 div 元素,它也是 img

的父元素
cy.get('img[src*="/static/media/image"]').parent('div')