我有一个输入字段:
<input value="0">
我可以轻松地在cypress中清除()和键入(“ 123”)。 值会更新,一切都很好。
另一方面,由于cypress会在值的开头写入我的.type(“ 123”)值,因此无法更新如下所示的预填充输入字段。
<input value="1500000">
我的方法如下:
.find("input")
.clear()
.type(`${input}{enter}`)
字段上的更改会触发redux操作,我们将redux用于整个状态处理。可能有问题吗?
否则,您知道这个问题吗?
答案 0 :(得分:1)
我使用发现的here的HTML进行了测试,并且一切正常(在屏幕快照中,我写了“ Stefano”而不是默认值)
引用React时,您遇到了麻烦:这种状态更改需要按预期运行更多的工作,因为React(和Vue等)显然会覆盖DOM中的所有内容。
您面临一个常见的问题,即事件触发后,React会立即重新渲染组件...因此您必须在React组件(Google)中更改输入值/ defaultValue管理,为此您需要找到一个关于此的众多解决方案
答案 1 :(得分:0)
尝试添加一个断言以使赛普拉斯“等待”清除输入:
.clear().should('have.value', '')
.type(...)