在有头模式下测试通过,但在 headless (headless)模式下总是失败
我正在尝试对“列表”类型的 w2ui 字段执行测试
理想情况下,当我们单击此 w2ui 列表元素时,会生成一个带有选择选项的下拉列表(覆盖),然后我们选择一个选项。
但在 headless (headless)模式下运行测试时,不会生成此下拉列表。
重现问题的代码:-
网页代码:
将上述链接中提供的代码保存在文件“test_webpage.html”中。将此 HTML 文件放在 cypress.json 所在的目录中。
Cypress 测试代码:
describe('W2UI List Test', function() {
it('Click List Field', function() {
cy.visit('test_webpage.html');
cy.get('.w2ui-select').siblings('.w2ui-field-helper').should('be.visible').click();
cy.wait(2000);
cy.get('#w2ui-overlay tr[index=0]').should('be.visible').click();
});
});
最佳答案
是的,当前 Cypress 中存在一个错误,当 Test Runner 窗口不是事件窗口时,某些鼠标事件无法正确模拟。这正在这里进行:https://github.com/cypress-io/cypress/issues/1909#issuecomment-395995180 , 这正在研究中
同时,你可以把你的测试代码改成这样,例如:
cy.get('.w2ui-select').siblings('.w2ui-field-helper').click()
cy.contains('Barack Obama').click()
Cypress
自动检查 actionability
在点击之前,所以不需要 should('be.visible')
关于list - 柏树 headless (headless)测试中未呈现 w2ui 覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50737573/