如何阻止 Selenium 修剪字符串末尾的空格?

问题描述 投票:0回答:1

如何阻止 Selenium 修剪字符串末尾的空格?

该空间在应用程序中是必要的,因此我想确保保留该空间,以便我可以断言正在发生正确的间距!

这就是 HTML 本身的样子:

<span>Response: </span>

我通过编辑该跨度以删除该空格来绝对确定该空格显示在页面上,并且它确实删除了该元素和结果之间的空格。

我应该怎样做才能阻止空间被修剪?

当前使用 Selenium 4.16.0 和 Python 3.12.1

这是我目前正在做的事情:

response_text = driver.find_element(By.TAG_NAME, "span").text
assert response_text == "Response: ", print("Endpoint 1 should have returned 'Response: ' but returned '" + str(response_text) + "'")

这是我测试的相关输出:

Expected :'Response: '
Actual   :'Response:'
python-3.x selenium-webdriver trailing-whitespace
1个回答
0
投票

我已经回答过这个问题了。看来问题已被删除。

我从你的回答中了解到的是:如果任何文本末尾有空格,那么它就会被修剪。(我知道并不是所有的空格都被修剪,因为我确信这种情况不会发生)。这是 html 标签的默认行为,即如果在任何标签末尾发现任何空格,它会将自己视为不需要的空格。以下应该可以解决问题。

response_text = driver.find_element(By.TAG_NAME, "span").text
response_text = f'{response_text} '
assert response_text == "Response: "
© www.soinside.com 2019 - 2024. All rights reserved.