作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Selenium 计算网页上数据网格中的行数。每行由一个使用以下结构的 div 表示(本文已简化):-
<div id="resultsGrid">
<div>
<div>
<div/>
<div>
<div class="canvas">
<div data-bind="foreach: renderedRows">
<div>list item</div>
<div>list item</div>
<div>list item</div>
<div>list item</div>
</div>
</div>
</div>
</div>
</div>
</div>
通过阅读其他类似的帖子,我尝试使用以下代码和 XPath 返回 <div data-bind="foreach: renderedRows">
中的 div 数量。
var rowCount = webDriver.FindElements(By.XPath("//*[@id='usersResultsGrid']/div/div/div[2]/div/div")).Count;
每当我尝试此操作时,我只会返回 1 个计数,而不是预期的 4 个(在本例中)。谁能指出我做错了什么的正确方向?
谢谢。
最佳答案
已解决。答案是在 By.XPath("//*[@id='usersResultsGrid']/div/div/div[2]/div/div/div") 中向 xpath 添加一个额外的 div。我最初的 xpath 指向 div“data-bind”元素,它当然只有 1 个计数,我需要它下面的 div 列表。
关于c# - Selenium WebDriver : how to count number of DIV elements in a list,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65331538/
我是一名优秀的程序员,十分优秀!