我有一个带有Vuetify Select组件的组件:
<v-select
:items="corporations"
label="Corporation name"
data-test="corporation-name"
outlined
></v-select>
我想用赛普拉斯测试来模拟选择:
cy.get('[data-test="corporation-name"]').select('Thorgate');
不幸的是,我不能,并且我收到此错误消息:
CypressError: cy.select() can only be called on a <select>. Your subject is a: <input data-test="corporation-name" id="input-13" readonly="readonly" type="text" aria-readonly="false" autocomplete="off">
我也尝试过用来输入值,type()
但是赛普拉斯告诉我
CypressError: Timed out retrying: cy.type() failed because this element is readonly:
有什么主意吗?
错误是不言自明的。
cy.select()
方法应用于标签<input>
<select>
.type()
进入<input readonly>
cy.select()
只能应用于<select>
标签。如果您的v-select组件呈现“一个动态div一串自定义选择并输入select的INSTEAD”,则您需要创建一个自定义Cypress命令来处理cy.customSelect()
行为。例如,它将:单击主包装器,通过键入单词找到一个选项,然后单击它...因此选择该选项
对于第二个输入,由于您的输入是只读的,因此您可以在键入时尝试在选项中使用{force:true}cy.type("text", {force: true})
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句