

我想點擊下一步按鈕來測驗分頁,直到它的類被“禁用”。我使用了下面的代碼。但即使“下一步”按鈕已“禁用”類,它也會繼續單擊。賽普拉斯在附件中拋出錯誤。
static pagination(){
var index = 0
cy.get('li [data-test="page-link"]:not(.active):not([aria-label="Next"]) :not([aria-label="Previous"]').as("pages")
cy.get('@pages').its('length').then( len =>{
if(index <= len){
cy.get('[data-test="page-link"][aria-label="Next"]').then( next=>{
cy.wrap(next).invoke('hasClass', 'disabled').then( classDisable =>{
if(classDisable==false){
cy.wait(500)
cy.wrap(next).should('not.have.class', 'disabled')
cy.wrap(next).click()
}
this.pagination()
index
})
})
}
})
}
uj5u.com熱心網友回復:
如果要單擊禁用的按鈕,則必須使用{force: true}
cy.wrap(next).click({force: true})
而且,如果您想首先檢查按鈕是否啟用然后執行單擊,您可以執行以下操作:
cy.get('[data-test="page-link"][aria-label="Next"]').then(($next) => {
if ($next.is(':enabled')) {
//next button is enabled
cy.wrap(next).click()
} else {
// Do something when next button is disabled
}
})
uj5u.com熱心網友回復:
這可能是你想要的
const maxPages = 10 // so we don't get an infinite loop
// if Next never gets disabled (maybe due to app bug)
function clickNext(nextClicks = 0) {
if (nextClicks > maxPages) {
throw "Maximum page clicks exceeded"
}
// use non-failing jQuery (Cypress.$) to test the disabled state
const nextIsDisbaled = Cypress.$('[data-test="page-link"][aria-label="Next"]')
.hasClass('disabled')
if (nextIsDisabled) return
cy.get('[data-test="page-link"][aria-label="Next"]').click()
cy.wait(500) // or wait for a page change, e.g new element
clickNext( nextClicks)
}
clickNext() // start clicking
如果從一開始就禁用下一步按鈕,它也應該作業。
uj5u.com熱心網友回復:
完全避免條件檢查是可能的。
如果您可以在“下一步”左側的框中獲得數字 - 我猜測.prev()會得到它,但您可能需要調整該步驟。
然后你可以 click() pageCount-1 次。
cy.get('[data-test="page-link"][aria-label="Next"]')
.prev() // last page box
.invoke('text')
.then(lastPageText => {
const pageCount = lastPageText;
Cypress._.times(pageCount -1, () => {
cy.get('[data-test="page-link"][aria-label="Next"]').click()
})
})
uj5u.com熱心網友回復:
嘗試在下次單擊時將 force 選項設定為 true。
cy.wrap(next).click({ force: true} )
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/432491.html
標籤:javascript if 语句 分页 柏
上一篇:如何撰寫具有特定條件的awk代碼
