parent
获取一组DOM元素的父级DOM元素。
请注意,.parent()
仅在DOM树中向上遍历一级,与.parents()命令不同。
info
此命令的查询行为与jQuery中的.parent()
完全一致。
语法
.parent()
.parent(selector)
.parent(options)
.parent(selector, options)
用法
正确用法
cy.get('header').parent() // 获取`header`的父元素
错误用法
cy.parent() // 错误,不能直接链式调用'cy'
cy.reload().parent() // 错误,'reload'不返回DOM元素
参数
selector (字符串选择器)
用于过滤匹配DOM元素的选择器。
options (对象)
传入一个选项对象以改变.parent()
的默认行为。
选项 | 默认值 | 描述 |
---|---|---|
log | true | 在命令日志中显示该命令 |
timeout | defaultCommandTimeout | 等待.parent() 解析的超时时间,超过则超时 |
生成结果
.parent()
返回找到的新DOM元素。.parent()
是一个查询命令,可以安全地链式调用其他命令。
示例
无参数
获取活动li
的父元素
<ul class="main-nav">
<li>概述</li>
<li>
入门指南
<ul class="sub-nav">
<li>安装</li>
<li class="active">构建</li>
<li>测试</li>
</ul>
</li>
</ul>
// 返回.sub-nav
cy.get('li.active').parent()
选择器
获取所有li
元素中具有sub-nav
类的父元素
<ul class="main-nav">
<li>概述</li>
<li>
入门指南
<ul class="sub-nav">
<li>安装</li>
<li class="active">构建</li>
<li>测试</li>
</ul>
</li>
</ul>
// 返回.sub-nav
cy.get('li').parent('.sub-nav')
规则
要求
.parent()
必须链式调用自返回DOM元素的命令。
断言
超时设置
.parent()
可能因等待元素存在于DOM中而超时。.parent()
可能因等待添加的断言通过而超时。
命令日志
断言活动li的父元素
cy.get('li.active').parent().should('have.class', 'nav')
以上命令将在命令日志中显示为:

当点击命令日志中的parent
命令时,控制台会输出以下内容:
