回到父元素 - 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')
有人可以协助处理以下情况:
我必须检查 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')