我试图在Puppeteer测试环境中设置HTML元素的innerText
,并且不能(容易地)通过CSS选择器获得元素,所以我通过:
elementHandle
:let [ el ] = await page.$x(`//span[contains(text(), 'addTestFile.pdf')]`)
我通常使用evaluate
设置innerText
用于测试目的,但我需要一个选择器,例如:
await page.evaluate(() => document.querySelector('mySelector').innerText = '⚠️DOM modified for testing purposes⚠️')
我可以设置innerText
的给定elementHandle
没有CSS选择器?
我看到我可以得到await el.getProperty('innerHTML')
的值,但我没有找到一种方法来设置它。
我明白了:我可以在elementHandle
上使用evaluate
:
let [ el ] = await page.$x(`//span[contains(text(), 'addTestFile.pdf')]`)
await el.evaluate(element => element.innerText = '⚠️DOM modified for testing purposes⚠️')