gpt4 book ai didi

cypress - 无法断言元素是 HTMLDivElement

转载 作者:行者123 更新时间:2023-12-05 05:36:09 26 4
gpt4 key购买 nike

我想检查找到的带有 id 的元素类型。我正在使用带有 instanceof 匹配器的断言,但它失败了。

我的测试如下:

cy.get('#calculated').should(($el) => {
expect($el[0]).to.be.instanceof(HTMLDivElement)
})

我的 HTML 是

<div id="calculated">123.40</div>

很明显元素是一个div,那么断言语法有什么问题呢?

最佳答案

instanceof 元素在内部取决于创建该元素的窗口。

当您使用以下内容时,您是在顶级窗口(Cypress runner 窗口)中使用 HTMLDivElement

expect($el[0]).to.be.instanceof(HTMLDivElement)

但是您正在测试的元素是由应用程序 iframe 内的窗口创建的。

如果您从该窗口引用 HTMLDivElement,断言将通过

cy.window().then(win => {      // app window

cy.get('#calculated').should(($el) => {
expect($el[0]).to.be.instanceof(win.HTMLDivElement) // qualify the type with
// the window reference
})
})

关于cypress - 无法断言元素是 HTMLDivElement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73341590/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com