if '用户名或密码错误' in res.page_source: assert False, '登录失败,用户名或密码错误' else: assert 'Dashboard - Leon CRM' in res.title 如何将错误信息改成The password can not be less than 6 digits或者Please enter a valid email Password
时间: 2024-02-07 17:04:10 浏览: 171
您可以使用以下代码将错误信息改为"The password can not be less than 6 digits"或者"Please enter a valid email Password":
```python
if '用户名或密码错误' in res.page_source:
error_message = res.find_element_by_xpath("//div[contains(@class, 'error-message')]").text
if "密码长度至少为6位" in error_message:
assert False, 'The password can not be less than 6 digits'
elif "请输入有效的电子邮件地址或密码" in error_message:
assert False, 'Please enter a valid email Password'
else:
assert False, '登录失败,用户名或密码错误'
else:
assert 'Dashboard - Leon CRM' in res.title
```
在这段代码中,我们首先使用 `find_element_by_xpath` 方法获取错误信息。然后,我们检查错误信息中是否包含特定的文本,如果包含,则抛出相应的自定义错误信息,否则仍然抛出默认的"登录失败,用户名或密码错误"信息。
相关问题
> assert 'Dashboard - Leon CRM' in res.title E assert 'Dashboard - Leon CRM' in 'Leon CRM' E + where 'Leon CRM' = <selenium.webdriver.chrome.webdriver.WebDriver (session="499c6b7aba5367f78fdb0bdcf9379362")>.title test01_login.py:31: AssertionError
根据错误信息,我们可以看到断言 `assert 'Dashboard - Leon CRM' in res.title` 失败了。具体来说,它在比较 `'Dashboard - Leon CRM'` 和 `'Leon CRM'` 时出现了错误。这表明页面上的标题并不包含 `'Dashboard - '` 这个前缀,只有 `'Leon CRM'`。因此,要修复这个断言,您需要更新它,使它只检查 `'Leon CRM'` 是否在页面标题中出现。例如:
```
assert 'Leon CRM' in res.title
```
这应该会解决这个 AssertionError。
阅读全文