我想测试标题是否有特定的文字。有这个命令吗?
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!
希望我的回答可以帮助到你。
使用 page.locator 和 CSS 选择器似乎是类似 CSS 的方法来查询元素引用。
const elm = page.locator('h1.header');
举个例子。