使用 Cypress 验证静态下拉菜单
Cypress 使用其内置命令来处理静态下拉菜单。对于静态下拉菜单,元素的标签名称应为<select>,其子元素的标签名称应为<option>。
使用的命令是 select()。此命令需要与提供标签名称为 select 的 DOM 元素的命令链接。下面列出了 select 命令的各种用法:
select(value) - 带有参数 value 的 select() 命令选择具有该值的选项。与 select() 链接时,get 方法应具有静态下拉菜单的 css 选择器。
cy.get('select').select('value1')
select(text) - 带有参数 text 的 select() 命令选择具有该文本内容的选项。与 select() 链接时,get 方法应具有静态下拉菜单的 css 选择器。
cy.get('select').select('text')
select('Value1', 'Value2') - 带有参数的 select() 命令选择具有这些值或文本内容的选项数组。与 select() 链接时,get 方法应具有静态下拉菜单的 css 选择器。
cy.get('select').select(['Tutorialspoint', 'Cypress'])
select({ force: true }) - 将选项作为参数的 select() 命令更改静态下拉菜单的默认行为。可以有三种类型的选项:log、force 和 timeout,它们的默认值分别为 true、false 和 defaultCommandTimeout(4000 毫秒)。
cy.get('select').select('Cypress', { force: true})
Cypress 使用 force 选项与隐藏元素交互,然后强制内部从下拉菜单中选择一个选项。
我们可以在 Cypress 中使用 select() 命令应用断言。
语法
cy.get('select').select('Cypress').should('have.value', 'Cypress')
示例
使用 select() 的代码实现。
describe('Tutorialspoint Test', function () { // test case it('Test Case2', function (){ cy.visit("https://tutorialspoint.com/selenium /selenium_automation_practice.htm"); // checking by values cy.get('input[type="checkbox"]') .check(['Manual Tester','Automation Tester']); // selecting a value from static dropdown cy.get('select[name="continents"]').select('Europe') // asserting the option selected .should('have.text', 'Europe') }); });
广告