如何使用 Selenide 准确获取网页表格中的行数
作者:霞舞 浏览: 发布日期:2026-02-02
[导读]:本文介绍在Selenide框架中高效统计网页表格行数的方法,重点讲解如何通过CSS类选择器定位行元素并调用size()获取数量,适用于含动态行渲染的表格校验场景。
本文介绍在 selenide 框架中高效统计网页表格行数的方法,重点讲解如何通过 css 类选择器定位行元素并调用 `size()` 获取数量,适用于含动态行渲染的表格校验场景。
在 Selenide 中统计表格行数,关键在于准确识别代表“行”的 DOM 元素。从您提供的 HTML 结构可见:该表格虽使用
标签,但实际行内容并非标准 ,而是多个同级 元素嵌套在
内——这意味着需按行容器的 CSS 类而非语义化标签来定位。正确做法是使用 Selenide 的集合选择器 $$(...)(返回 ElementsCollection),匹配所有 .srringtable 元素,再调用 .size() 方法获取数量:
int rowCount = $$(".srringtable").size();✅ 该语句简洁可靠,自动等待元素加载(默认隐式等待),无需手动判空或循环计数。
⚠️ 注意事项:
- 确保页面已完全渲染(Selenide 默认等待,但若存

在异步加载,可加 waitUntil(Condition.visible, 10000) 增强健壮性);
- 若表格存在分页或懒加载,需先触发数据加载(如点击“显示15条”按钮),再执行计数;
- 避免误用 $()(单元素)——它仅返回第一个匹配项,$.size() 永远为 1,无法用于计数。
验证示例(完整断言逻辑):
// 模拟用户选择“每页显示15条”
$("#pageSizeSelect").selectOption("15");
// 等待新行渲染完成
$$(".srringtable").shouldHaveSize(15);
// 或获取数值进行自定义校验
int actualRows = $$(".srringtable").size();
assertThat(actualRows).isEqualTo(15);总结:Selenide 的 $$().size() 是统计动态行数的首选方案。核心在于精准定位行级容器(本例为 .srringtable),而非拘泥于
标签结构——这正是现代前端框架(如 Vue/React 渲染表格)的常见实践。
免责声明:转载请注明出处:http://jing-feng.com.cn/news/799489.html