【发布时间】:2019-03-11 14:48:42
【问题描述】:
我在 div 上有 Hammer 监听器,监听点击和按下。我正在用 Cypress 编写测试,但在模拟水龙头时遇到了很多麻烦。我在摆弄trigger()。我试过trigger('tap')、trigger('mousedown').trigger(mouseup') 和trigger('touchstart').trigger('touchend'),但没有成功。有人用 Cypress 成功生产 Hammer 水龙头吗?
点击调用一个函数,设置window.location = new-page.html,像这样...
function changePage(id) {
window.location.href = "FraisEnListe.aspx?idnote=" + id;
}
不幸的是,如果我直接从 Cypress 调用该函数,像这样......
cy.window().then((win) => {
win.changePage(29312);
})
Cypress url stem 被视为基本 url,而不是正在测试的应用程序中的当前位置,我得到了一个蒸汽 404。这似乎很棘手。
【问题讨论】:
-
可能与我打开它们的问题有关吗? github.com/cypress-io/cypress/issues/2521
-
另外,请参阅Erik Zeedijk 我们仍在尝试让 Hammer.js 触发 click() 或 Cypress 发送的任何其他事件。据我了解,赛普拉斯无法发送本地事件。 Hammer 似乎无法识别 JQuery 事件,所以我们陷入了困境。尝试自定义 .invoke 操作也不起作用。 Hammer 和 Cypress 的组合似乎是一个问题。由于 Hammer 事件在应用程序中无处不在,我们可能需要回顾 Selenium 进行测试。