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

Playwright获取<div>内<dd>元素文本值失败问题求助

Playwright获取元素文本失败的解决办法

问题根源

  1. 参数未加引号:getByTestId的参数employee1需要是字符串,必须加双引号或单引号,否则会被当成未定义变量处理。
  2. 异步方法未加await:innerText()和textContent()都是异步方法,必须用await等待执行完成,否则拿到的不是实际文本内容,而是一个未兑现的Promise对象(也就是报错里的{})。

正确代码示例

方式一:先获取文本再断言

// 注意给testid加引号,同时用await调用异步方法
const elementText = await page.getByTestId("employee1").innerText();
await expect(elementText).toEqual('Sam');

方式二:链式断言(Playwright推荐写法)

直接对元素做文本断言,写法更简洁规范:

await expect(page.getByTestId("employee1")).toHaveText('Sam');

补充说明

如果使用textContent(),写法和innerText()逻辑一致,同样需要加await:

const elementText = await page.getByTestId("employee1").textContent();
await expect(elementText).toEqual('Sam');

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 01:33:14