我在div上有锤子侦听器,听敲击和按下。我正在用赛普拉斯(Cypress)编写测试,并且在模拟水龙头上遇到了很多麻烦。我正在摆弄trigger()
。我尝试过trigger('tap')
,trigger('mousedown').trigger(mouseup')
和trigger('touchstart').trigger('touchend')
,但没有成功。有人成功地用柏树制作锤子吗?
TAP调用一个函数,该函数设置了window.location = new-page.html
,例如...
function changePage(id) {
window.location.href = "FraisEnListe.aspx?idnote=" + id;
}
不幸的是,如果我直接从柏树中调用该功能,则像这样...
cy.window().then((win) => {
win.changePage(29312);
})
Cypress URL茎被视为基本URL,而不是正在测试的应用程序中的当前位置,我得到了蒸404.这似乎很棘手。
尝试添加属性类型:'touch',将事件触发
const pointerEvent = {
force: true,
pointerType: 'touch',
x: 11.1386137008667,
y: 653.46533203125,
}
cy.get('[data-cy=body]')
.trigger('pointerdown', pointerEvent)
.trigger('pointerup', pointerEvent)
在我的情况下,我必须按下或点击角落:
const pointerEvent = {
force: true,
pointerType: 'touch',
};
cy.wait(3000);
cy.get('[data-cy=body]')
.trigger('pointerdown', 'topLeft', pointerEvent)
.trigger('pointerup', 'topLeft', pointerEvent)
.wait(5000);