Notice
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- 갱신
- wsgi란
- gunicorn
- disabled
- microsoft office 2010 정품인증
- toolkit
- 만료
- https
- Python
- Margin
- Micro
- border
- 제품 키
- js
- jquery
- div
- word
- padding
- letsencrypt
- wsgi
- 해제
- 2010 micro office
- Callback
- javascript
- uwsgi
- instance method
- jjquery
- pep8
- class method
- 인증서
- Today
- 155
- Total
- 130,294
jadehan
django test 도중 static파일이 호출되지 않는 문제 본문
Django function test 에서 static file호출이 되지않는 문제
생전 해본적도 없는 test code를 짜면서 개발을 하려니 이래저래 고생입니다.
이번엔 기존에 존재하는 js기능을 테스트하려다 생소한 에러에 직면했습니다.
python manage.py test functional_test
Traceback (most recent call last):
File "/Users/hanminsoo/.pyenv/versions/3.5.1/lib/python3.5/wsgiref/handlers.py", line 137, in run
self.result = application(self.environ, self.start_response)
File "/Users/hanminsoo/.pyenv/versions/study_alone/lib/python3.5/site-packages/django/test/testcases.py", line 1198, in __call__
return super(FSFilesHandler, self).__call__(environ, start_response)
File "/Users/hanminsoo/.pyenv/versions/study_alone/lib/python3.5/site-packages/django/core/handlers/wsgi.py", line 177, in __call__
response = self.get_response(request)
File "/Users/hanminsoo/.pyenv/versions/study_alone/lib/python3.5/site-packages/django/test/testcases.py", line 1181, in get_response
return self.serve(request)
File "/Users/hanminsoo/.pyenv/versions/study_alone/lib/python3.5/site-packages/django/test/testcases.py", line 1193, in serve
return serve(request, final_rel_path, document_root=self.get_base_dir())
File "/Users/hanminsoo/.pyenv/versions/study_alone/lib/python3.5/site-packages/django/views/static.py", line 54, in serve
fullpath = os.path.join(document_root, newpath)
File "/Users/hanminsoo/.pyenv/versions/3.5.1/lib/python3.5/posixpath.py", line 89, in join
genericpath._check_arg_types('join', a, *p)
File "/Users/hanminsoo/.pyenv/versions/3.5.1/lib/python3.5/genericpath.py", line 143, in _check_arg_types
(funcname, s.__class__.__name__)) from None
TypeError: join() argument must be str or bytes, not 'NoneType'
에러로그를 몇 번이고 확인해보아도 도저히 뭐가 문제인지 모르겠고 건드리지도 않은 부분에서 Traceback
이 일어나니 골머리를 앓고 있던 도중 한가지 단서를 잡게됩니다.
바로 제가 테스트를 위해서 사용하고 있던 LiveServerTestCase
가 문제였습니다.
기존에 localhost:8000
을 돌리기 위해 사용되던 runserver
는 스스로 /static/
레포지토리를 탐색하여 적용해야할 static파일들을 찾습니다.
하지만 LiveServerTestCase
는 그런 기능은 탑제되어있지 않는게 문제였습니다.
이 문제를 해결하기 위해 LiveServerTestCase
를 지우고 StaticLiveServerTestCase
를 대신 상속받도록 해주면 됩니다.
그 후 테스트를 돌려주면 정상적으로 테스트가 통과하는 것을 확인할 수 있습니다.
0 Comments