You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何断言动态表格中描述为Parts Inventory的指定行的内容值

动态表格固定描述行断言方法

核心思路是放弃按行索引定位的方式,直接通过描述字段的文本内容匹配到对应整行,再对行内其他字段做断言,不受行位置变动影响。

通用定位逻辑(适配绝大多数UI测试框架)

使用XPath匹配目标行,写法如下:
//tr[.//td[text()='Parts Inventory']]
该表达式会自动查找所有表格行中,子单元格包含Parts Inventory文本的行,无需关心行的排序位置。

不同测试框架的实现示例

  • Selenium(Java)
// 定位目标行
WebElement partsInventoryRow = driver.findElement(By.xpath("//tr[.//td[text()='Parts Inventory']]"));
// 断言该行第二列的库存数值符合预期
Assert.assertEquals(partsInventoryRow.findElement(By.xpath("./td[2]")).getText(), "预期数值");
  • Playwright(JavaScript)
// 定位目标行
const partsInventoryRow = page.locator('tr', { hasText: 'Parts Inventory' });
// 断言行内第二列内容
await expect(partsInventoryRow.locator('td').nth(1)).toHaveText('预期数值');
  • Cypress
cy.contains('tr', 'Parts Inventory')
  .find('td').eq(1)
  .should('have.text', '预期数值')

特殊场景适配

  • 如果描述文本存在前后空格等冗余字符,可改用模糊匹配的XPath://tr[.//td[contains(text(),'Parts Inventory')]]
  • 要避免文本重复导致的误匹配,可以加上单元格的class属性做限定,比如描述列固定带desc类的情况下,XPath调整为://tr[.//td[@class='desc' and text()='Parts Inventory']]

内容的提问来源于stack exchange,提问作者ItsNotAndy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:45:05