gpt4 book ai didi

javascript - WebdriverIO waitForExist() 选择元素的选定选项

转载 作者:行者123 更新时间:2023-12-03 06:56:14 34 4
gpt4 key购买 nike

我最初的研究让我找到了 jQuery 选择器,它可以让我在 Chrome 检查器中返回正确的元素,但 Webdriver 不能或无法识别该选择器,即使 jQuery 可以识别。

这个片段就是我的选择元素的样子。

<select id="ember2932" tabindex="0" class="reasons-drop-down ember-view x-select">
<option id="ember2933" class="ember-view x-option">Select a Reason</option>
<option id="ember2935" value="DOCUMENT_LOST" class="ember-view x-option">Document Lost</option>
<option id="ember2937" value="DATA_ISSUE_CORRECTION" class="ember-view x-option">Data Issue/Correction</option>
</select>

我使用的 jQuery 选择器是:

$("select.reasons-drop-down option:selected:contains('Document Lost')")

这适用于 Chrome 检查器,并在选择“文档丢失”选项时返回此信息:

[<option id=​"ember2935" value=​"DOCUMENT_LOST" class=​"ember-view x-option">​Document Lost​</option>​]

当由于找不到元素而未选择时,它会返回一个空数组。

当我在 Webdriver 中增量启动选择器时,它会一直产生有意义的返回

$("select.reasons-drop-down option")

一旦我添加 :selected,Webdriver 就不再能够看到选择器的存在,尽管检查器中的 jQuery 仍然可以。

如何让 Webdriver 识别我知道 DOM 中存在且可以使用 jQuery 选择的元素?此时,我被阻止了,因为我根本无法让 Webdriver 识别所选选项,即使我可以在 jQuery 中清楚地获取它。

如何验证 Webdriver 中所选的选项? waitForExist() 不起作用,并且 isSelected() 的 api 似乎不适合这种用途,或者我不理解它。

最佳答案

如果您不一定要使用 JQuery,您可以尝试

  client.selectByValue('#ember2932', 'DOCUMENT_LOST')

http://webdriver.io/api/action/selectByValue.html

关于javascript - WebdriverIO waitForExist() 选择元素的选定选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37262612/

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