{ expect(response-6ren">
gpt4 book ai didi

javascript - 使用 Cypress 断言时,类型 'value' 上不存在属性 'JQuery'

转载 作者:行者123 更新时间:2023-12-03 07:53:31 24 4
gpt4 key购买 nike

我正在尝试断言输入字段的值:

cy.get('[data-vv-name="item price"]')
.then(response => {
expect(response.value).to.be.equal('100')
})

但是我收到错误:

Property 'value' does not exist on type 'JQuery<HTMLElement>'

但是当我在控制台尝试代码时:

$('[data-vv-name="item price"]').value

我能够得到'100'的正确值。我应该添加/更新什么才能使我的断言正确?我在这里遗漏了什么吗?

编辑:

使用以下内容,我能够做出我的断言

expect((<HTMLInputElement>response[0]).value).to.be.equal(10)

最佳答案

jQuery 对象没有 .value 属性,但它们确实有您可以使用的 .val() 方法

cy.get('[data-vv-name="item price"]')
.then($el => {
// $el is convention for naming jQuery objects
expect($el.val()).to.be.equal('100')
})

或在链中使用.invoke()(引用invoke)

cy.get('[data-vv-name="item price"]')
.invoke('val')
.then(value => {
expect(value).to.be.equal('100')
})
.should('eq', '100') // alternative to above assertion

或者您可以使用 .should('have.value', ...) chainer (ref should )

cy.get('[data-vv-name="item price"]')
.should('have.value', '100')

或使用已展开元素的 .value 属性,如您所示

关于javascript - 使用 Cypress 断言时,类型 'value' 上不存在属性 'JQuery<HTMLElement>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76580005/

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