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

如何在Python版Selenium WebDriver中断言输入框文本?

解决Python Selenium断言输入框文本的问题

你的问题核心在于输入框的内容不能通过element.text获取,具体原因和修复方案如下:

  • element.text仅用于获取元素的可见静态文本(比如div、span标签里直接显示的文字)
  • 输入框(input/textarea这类表单元素)的内容存储在value属性中,必须用get_attribute('value')才能正确获取

修改你的断言函数即可解决断言错误,代码如下:

def assert_element_text(self, driver, xpath, expected_text):
    element = driver.find_element(by=By.XPATH, value=xpath)
    # 替换element.text为get_attribute('value')
    element_text = element.get_attribute('value')
    assert expected_text == element_text, f"断言失败:预期文本是{expected_text},实际获取到{element_text}"

def assert_surname(self):
    self.assert_element_text(self.driver, self.surname_field_xpath, self.expected_surname)

额外提示:

  • 多行文本框(textarea)的内容同样用get_attribute('value')获取
  • 断言里添加错误提示信息,能更直观地定位问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 23:25:02