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

使用Playwright for C#验证文本框内容报错,如何正确获取输入值?

解决Playwright for C#验证文本框输入内容的问题

你之前用ToContainTextAsync断言失败,是因为input标签的用户输入内容存在value属性里,而不是元素的文本节点,ToContainText是用来检测元素内部的文本内容(比如<div>文本</div>里的文本),所以拿不到input的输入值。

正确的验证方式有两种:

方法一:用Playwright内置的表单元素断言

直接使用ToHaveValueAsync,这个方法专门针对input、select等表单元素的value属性做验证:

await Expect(RMSPage.Locator("#NameFirst")).ToHaveValueAsync("firstName");

方法二:手动获取value属性后断言

如果需要先获取值再做其他逻辑处理,可以用GetAttributeAsync拿到value属性值,再用常规断言:

var inputValue = await RMSPage.Locator("#NameFirst").GetAttributeAsync("value");
Assert.AreEqual("firstName", inputValue);

另外要注意:断言前确保文本框已经完成内容填充,并且页面处于稳定状态(比如等待输入操作完成、页面加载完毕),避免因为异步加载导致值还未设置就触发断言。

内容的提问来源于stack exchange,提问作者Dusty Shaw

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 11:30:00