在赛普拉斯中选择Kendo ComboBox

时间:2018-11-21 14:39:34

标签: testing kendo-ui automation cypress

我在从赛普拉斯的组合框中选择值时遇到问题。 它总是写给我:

CypressError: cy.select() can only be called on a <select>. Your subject is a: <span unselectable="on" class="k-select" aria-label="select" role="button" tabindex="-1" aria-controls="fabric_listbox">...</span>
Types text into numeric inputs

我的代码如下:

describe('KendoUI', () => {

  it('types text into numeric inputs', () => {

    cy.visit('https://demos.telerik.com/kendo-ui/combobox/index');

    cy.get(':nth-child(4) > .k-dropdown-wrap > .k-select').select('Polyester')
  })
})

能给我一些帮助吗? 您可以在此页面上尝试:https://demos.telerik.com/kendo-ui/combobox/index

谢谢。

4 个答案:

答案 0 :(得分:1)

cy.select()仅适用于本机HTML <select>元素。对于您的情况,您只需在要选择的元素上cy.click()。这是所有模仿选择行为的自定义插件的方法。

答案 1 :(得分:1)

我解决了。

  1. 在元素上放置cy.click()

  2. 使用cy.contains()文本找到框中的内容,然后单击它(cy.contains('text').click

答案 2 :(得分:1)

cy.get('combobox').contains('value').click()

答案 3 :(得分:0)

cy.get('kendo-popup').contains('Foobar').click({force:true})

您可能需要强制单击,因为该元素可能不可见