selenium - 元素是否保证按照它们在 DOM 中出现的顺序返回?

标签 selenium selenium-webdriver webdriver-io

我正在使用 WebdriverIO来驱动我的 Selenium 服务器,但我很好奇 Selenium 规范或 CSS 规范中是否有保证元素按照它们在页面上出现的顺序返回的保证。

例如:

<ul>
 <li>One</li>
 <li>Two</li>
 <li>Three</li>
</ul>

如果我做 driver.getText('li'); ,我保证它会返回:
['One', 'Two', 'Three']

或者是否存在行为未定义的情况?也许还有,我应该期待什么样的行为?我想这可能是深度优先搜索?

最佳答案

是的,订单由WebDriver specification保证:

All element location strategies must return elements in the order in which they appear in the current document.

关于selenium - 元素是否保证按照它们在 DOM 中出现的顺序返回?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30489908/

相关文章:

java - 使用基本页面对象扩展可加载组件

javascript - Spectron异步isExisting不会返回false

python - Selenium 和 BeautifulSoup : sharing and pulling session data resources to multiple libraries in python

python - Instagram 关闭 API 服务后,如何使用 python 将照片上传到 Instagram

java - 如何使 Firefox 驱动程序与手动打开 Firefox 一样

python - Selenium - 抓取动态生成的数据 Python

java - 如何向 JUnit 测试添加参数?是否可以像 testNg 中那样添加它们?

java.lang.OutOfMemory错误: GC overhead limit exceeded"while reading excel file using apache POI

javascript - 尝试理解 browser.elementIdText 命令

javascript - 错误 : "Command "maximizeWindow"is not yet implemented"using webdriverIO v6