gpt4 book ai didi

javascript - 当 Select 包含重复值时使用 Cypress select()

转载 作者:行者123 更新时间:2023-11-28 20:48:27 26 4
gpt4 key购买 nike

我需要在 select 中选择一个值。选择是一个国家列表,显示它们的名称,每个选项的值是两个字母的国家代码。我们将选择最多的国家显示在顶部,同时将它们保留在按字母顺序排列的位置。这意味着出现在顶部的项目会重复两次。

<select>
<option value="gb">UK</option>
<option value="us">USA</option>
<option value="af">Afganistan</option>
<option value="ai">Aland Islands</option>
...
<option value="us">USA</option>
<option value="gb">UK</option>
...
</select>

我选择这样的值:

cy.getSelect().select('gb')

但是,这会引发错误:

CypressError: Timed out retrying: cy.select() matched more than one option by value or text: gb

这是有道理的,因为“UK”的值是 gb,它出现在列表顶部和列表中的字母顺序位置。

我如何告诉 Cypress 忽略重复值并选择第一个匹配项?

请注意,我不能保证任何国家的索引,而且我还有很多其他选择不同国家的测试。我需要一种方法来告诉 Cypress 选择第一个匹配项。

最佳答案

您可以尝试下拉到 jQuery/JavaScript 以手动设置字段:

cy.get('select').then($country => {$country.val("gb")})

上面的 $country 应该是一个包含您选择的 html 的 jQuery 对象。

参见:https://docs.cypress.io/api/commands/then.html#Syntax

关于javascript - 当 Select 包含重复值时使用 Cypress select(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56633089/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com