无法弄清楚如何等待输入值中的文本

Cannot figure out how to wait for text in input value

场景: 我需要等待一些特定的文本加载到页面上,我遇到的问题是文本是输入框的值,这个值是页面上的最后一个 load/appear.

想知道有没有办法告诉编剧:

等待此输入​​框中的文本值=“文本输入值”

我用过 await this.page.locator('my locator').inputValue();,但我注意到当页面加载时间稍长时,该值有时 return 为空,因此我需要在继续之前专门等待它。

目前我正在等待一个特定的 Api 请求完成,目前有效,但我想知道是否有更好的方法?

如有任何帮助,我们将不胜感激。

试试这个:

等待page.waitForSelector('text=Log in',{timeout:25000})

适配选择器,可以使用text或者css或者xpath。您可以将超时值更改为适合您的值,以毫秒为单位。

如何使用带有自定义超时的 locator assertions to have value。类似于:

const locator = page.locator('my locator')
await expect(locator).toHaveValue('your value', {timeout: 20000})