问题描述
await page.goto(‘<http://localhost:3000/>');
expect(await page.$("data-testid=headline")).toBe("my headline")
解决方法
page.$()
只返回:<Promise<null|ElementHandle>>
您应该像这样使用 innerText
或 innerHtml
:
expect(await page.innerText("data-testid=headline")).toBe("my headline")
expect(await page.innerHtml("data-testid=headline")).toBe("my headline")
这两个方法都会返回<Promise<string>>
innerText
仅返回文本,而 innerHtml
将返回其中的所有内容。例如:
<p>
<a>Hey</a>
Helloworld!
</p>
page.innerText("p")
将返回 Helloworld!
。
但是 page.innerHtml("p")
会返回 <a>Hey</a>Helloworld!
希望我的回答能帮到你。