我有一个应用,其中包含一些我要使其自动化的输入字段。这些字段的要旨是,我应该能够双击一个字段,输入一个新值,然后按Enter提交该值,这将发送一个PUT请求并关闭输入字段。这适用于除日期以外的任何输入类型。
到目前为止,我已经尝试过:
使用cy.type('{enter}')
。这给出了Typing into a date input with cy.type() requires a valid date in the format 'yyyy-MM-dd'. You passed: {enter}
使用cy.trigger()
发送回车键事件。之所以有效,是因为它成功关闭了输入字段,但是却不发送PUT请求。
在父元素上按Enter。与使用cy.trigger()
奇怪的是,我自己手动打开输入字段,键入日期并按Enter键就可以很好地发送请求。在我看来,以编程方式按Enter提交字段时出现了一些问题,而Cypress并未将此解释为我试图在日期字段中实际键入无效字符的尝试。文档确实明确指出日期字段中不允许使用特殊字符。
由于这是公司代码,因此无法发布任何代码。
答案 0 :(得分:0)
我试图使其工作,但目前暂时无法完成。这样的事情应该起作用:
it.only('test', function () {
cy.visit('https://www.html5tutorial.info/html5-date.php')
cy.get('input')
.type('2009-12-12')
.type('{enter}')
})
但是事实并非如此,因此我开始深入研究一堆问题并发现了以下问题: https://github.com/cypress-io/cypress/issues/3405。它是关于另一种输入类型的,但是我相信这与您的问题有关。