self.send_keys(Personal_data.LOC_生日,birthday_data) 报错:> for i in range(len(val)): E TypeError: object of type 'datetime.date' has no len()
时间: 2024-01-27 08:03:17 浏览: 24
这个错误提示表明在你的代码中,`len(val)`这一行出现了类型错误,因为`val`是一个`datetime.date`类型的对象,它并没有实现`len()`方法。因此,你不能对其使用`len()`方法。
如果你想要将`birthday_data`转换为字符串类型,你可以使用`strftime()`方法将其转换为指定格式的字符串,例如:
```
birthday_str = birthday_data.strftime('%Y-%m-%d')
self.send_keys(Personal_data.LOC_生日, birthday_str)
```
这里,`'%Y-%m-%d'`表示日期格式为`年-月-日`,你可以根据需要自行调整。
希望这能够帮助你解决问题。如果你还有其他疑问,请随时提出。
相关问题
class Test_Login_method(BasePage): def test01_login_method(self,user,passwd): self.get(LoginResources.URL_leons.value) self.send_keys(LoginResources.LOC_账号,user) self.send_keys(LoginResources.LOC_密码,passwd) self.click(LoginResources.LOC_管理员) self.click(LoginResources.LOC_登录按钮) @pytest.mark.parametrize("arg", user_info) @logs def test01_login(self,driver,arg): page = Test_Login_method(driver) res= page.test01_login_method(arg[0],arg[1]) assert 'Dashboard - Leon CRM' in res.title 报错:> assert 'Dashboard - Leon CRM' in res.title E AttributeError: 'NoneType' object has no attribute 'title',如何修改
出现 `'NoneType' object has no attribute 'title'` 的错误通常是因为 `test01_login_method` 方法没有返回任何值。您需要在 `test01_login_method` 方法中添加返回语句,以返回一个值,以便在 `test01_login` 方法中使用。例如:
```
class Test_Login_method(BasePage):
def test01_login_method(self,user,passwd):
self.get(LoginResources.URL_leons.value)
self.send_keys(LoginResources.LOC_账号,user)
self.send_keys(LoginResources.LOC_密码,passwd)
self.click(LoginResources.LOC_管理员)
self.click(LoginResources.LOC_登录按钮)
return self.driver
@pytest.mark.parametrize("arg", user_info)
@logs
def test01_login(self,driver,arg):
page = Test_Login_method(driver)
res= page.test01_login_method(arg[0],arg[1])
assert 'Dashboard - Leon CRM' in res.title
return res.title
```
这里我们在 `test01_login_method` 方法的最后添加了 `return self.driver` 语句,并在 `test01_login` 方法中使用了 `return res.title` 语句来返回 `res.title` 属性。
class Test_Login_method(BasePage): def test01_login_method(self,user,passwd): self.get(LoginResources.URL_leons.value) self.send_keys(LoginResources.LOC_账号,user) self.send_keys(LoginResources.LOC_密码,passwd) self.click(LoginResources.LOC_管理员) self.click(LoginResources.LOC_登录按钮) 如何返回一个登录后的页面
你可以在 `test01_login_method` 方法中添加代码来获取登录后的页面,比如:
```python
class Test_Login_method(BasePage):
def test01_login_method(self, user, passwd):
self.get(LoginResources.URL_leons.value)
self.send_keys(LoginResources.LOC_账号, user)
self.send_keys(LoginResources.LOC_密码, passwd)
self.click(LoginResources.LOC_管理员)
self.click(LoginResources.LOC_登录按钮)
# 获取登录后的页面
home_page = HomePage(self.driver)
return home_page
```
假设 `HomePage` 是你登录后的页面类,`self.driver` 是 `BasePage` 类中的浏览器驱动对象,这样就可以通过实例化 `HomePage` 类来返回登录后的页面。
相关推荐
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)