如何解决Python Usign Selenium 的明显错误:PosixPath 问题
晚上好, 我已经开始了一个 django 项目,使用 python 3.7 和 Django 3.1.5 当我启动我的单一测试时,它们运行得很好。 运行 selenium 时,这就是我得到的:
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/wsgiref/handlers.py",line 137,in run
self.result = application(self.environ,self.start_response)
File "/Users/fabricejaouen/Documents/OC_Parcours_Python/advocacy_project/venv/lib/python3.7/site-packages/django/test/testcases.py",line 1322,in __call__
return super().__call__(environ,start_response)
File "/Users/fabricejaouen/Documents/OC_Parcours_Python/advocacy_project/venv/lib/python3.7/site-packages/django/core/handlers/wsgi.py",line 133,in __call__
response = self.get_response(request)
File "/Users/fabricejaouen/Documents/OC_Parcours_Python/advocacy_project/venv/lib/python3.7/site-packages/django/test/testcases.py",line 1305,in get_response
return self.serve(request)
File "/Users/fabricejaouen/Documents/OC_Parcours_Python/advocacy_project/venv/lib/python3.7/site-packages/django/test/testcases.py",line 1317,in serve
return serve(request,final_rel_path,document_root=self.get_base_dir())
File "/Users/fabricejaouen/Documents/OC_Parcours_Python/advocacy_project/venv/lib/python3.7/site-packages/django/views/static.py",line 36,in serve
fullpath = Path(safe_join(document_root,path))
File "/Users/fabricejaouen/Documents/OC_Parcours_Python/advocacy_project/venv/lib/python3.7/site-packages/django/utils/_os.py",line 17,in safe_join
final_path = abspath(join(base,*paths))
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/posixpath.py",line 80,in join
a = os.fspath(a)
TypeError: expected str,bytes or os.pathLike object,not nonetype
奇怪的部分是:
- 没有引发与我的项目相关的错误,
- Selenium 测试完美通过,这是我的 Selenium 设置:
from django.test import LiveServerTestCase
from selenium.webdriver.support.ui import webdriverwait
from selenium.webdriver import Firefox
import os
class CustomUserTest(LiveServerTestCase):
fixtures = ['users.json']
@classmethod
def setUpClass(cls):
super().setUpClass()
cls.browser = Firefox()
cls.browser.implicitly_wait(10)
@classmethod
def tearDownClass(cls):
cls.browser.quit()
super().tearDownClass()
def test_plaid_10_authenticate_on_the_website(self):
"""
The user wants to authenticate in order to have access to
the functionalities of the website
"""
self.browser.get(os.path.join(self.live_server_url,''))
因此,我可以继续我的项目,但是,这个令人费解的问题困扰着我。 如果你们中的任何人有提示,我会非常高兴。 亲切的问候。
解决方法
这就是重点。添加:
STATIC_ROOT = os.path.join(BASE_DIR,'static')
我的设置解决了这个问题。 谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。