赛普拉斯验证选择框中的选项



我有一个没有值属性但只有文本的select标签。如何验证选择框中显示的选项列表(在本例中为文本(。

<select id="market-select" onchange="updatePageDataForMarket()">
  <option>Dallas-Fort Worth</option>
  <option>El Paso</option>
  <option>San Antonio</option>
</select>

我假设你的意思是验证选择中的每个选项文本。如果是这样,您可以这样做:

const selectListOptions = ['Dallas-Fort Worth', 'El Paso', 'San Antonio'];
selectListOptions.forEach(item => cy.contains('#market-select', item));

您可以尝试手动触发输入事件/更改事件,因为这些是它唯一支持的

如果要确保项目顺序正确并且文本字符串完全匹配,则可以执行以下操作:

const selectListOptions = ['Dallas-Fort Worth', 'El Paso', 'San Antonio'];
cy.get('#market-select option').each(($el, index) =>
  cy.wrap($el).should('have.text', selectListOptions[index])
);

最新更新