我創建了一個簡單的邊際稅率計算器,并試圖用Cypress測驗其功能。該計算器的最終結果是,它在一個類別為 "結果 "的div中向用戶顯示結果金額。
完整的計算器可以在這里查看。https://codepen.io/ldanneman/pen/wvdZpyV
我的 Cypress 測驗回傳一個斷言錯誤。"4000ms后重試超時:預計'<div.result>'的值為'18020.86',但其值為''。
Cypress似乎在計算值插入到div之前就抓取了該div。我怎樣才能在它被渲染后測驗新的值呢?
HTML
<div class="body"/span>>
<div class="calculator">
<div>/span>
<input class="input"/>
<button class="submit"> 計算</button>
</div>/span>
<div class="result"/span>> </div>>
</div>/span>
</div>
從JavaScript插入到DOM的值
document. querySelector(".result").innerText = taxes
Cypress測驗
describe('Marginal Calculator', () => //span> {
it('User Calculates Taxes', () =>/span> {
cy.visit('http://127.0.0.1:5500/index.html'/span>)
cy.get('.input')。type(100000)
cy.get('.submit').click()
cy.get('.result').should('have.value',18020.86)
})
})
uj5u.com熱心網友回復:
如果你要斷言內部文本,你必須使用have.value代替have.text。
cy.get(' 。 result').should('have.text', '18020.86')
另外,如果你想給一些額外的超時,你可以添加{timeout: 6000}。
cy.get('.result'/span>, { timeout: 6000 }).should('have.text', '18020.86')
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/318675.html
標籤:
