티스토리 뷰

 파이썬에서 발생하는 오류중 하나인 UnicodeDecodeError를 해결하는 방법을 알려드리겠습니다.

현재 TTD(Test Driven Development, 테스트 주도 개발)를 공부하고 있고 그 중에서 tox라는 모듈을 공부하고있습니다. 그러던 중 예제를 돌려보는데 python -m tox가 계속해서 제대로 동작하지 않더군요.

D:\2020\DS\Files\example_code\unittest\예제\tox>tox
GLOB sdist-make: D:\2020\DS\Files\example_code\unittest\예제\tox\setup.py

 위와 같이 tox.ini 와 setup.py 파일을 모두 셋팅해준 이후 cmd창에서 tox명령을 통해서 실행을 해봤는데 위와 같이 GLOB sdist-mak까지만 잘 뜨고 이후에 오류가 나버렸습니다. 다음줄 부터 삽질과정에 대해서 나열해보겠습니다. 그리고 최종적으로는 (너무나 허무했던 😣)해결방법에 대해서 알려드리도록 하겠습니다.

구글링해서 찾은 예제는 모두 pyenv

 국내에 tox 예제글이 몇개 없는듯합니다. 있기는 한데 거의 pyenv를 사용해서 유닉스 환경에서 사용을 하고 있었습니다. 그래서 tox는 그냥 사용법 정도만 알고서 예제는 넘기자 했는데 pyenv-win 이라는 라이브러리를 발견! 😎 윈도우즈(windows)환경에서도 pyenv를 사용할 수 있게 해주는 라이브러리 였습니다. 그래서 pip로 pyenv-win을 설치하고 깃헙에 올라와있는데로 환경변수 설정까지 모두 완료해주었습니다. (Note. %USER 어쩌고 되있는 부분은 그냥 절대경로로 바꿔서 입력해주어야 잘 동작합니다.)

 그러나 pyenv virtualenv 명령이 안되었습니다. 그래서 정말 이렇게 까지 했는데도 안되서 너무 열이 받아서 stackoverflow에 물어보기로 했습니다..

결국 stackoverflow 까지 가서 해결법을 찾다

 그렇게 -3따봉을 받게 되었습니다. 너무 이상하고 유용하지 않은 질문이긴하죠.

 그러다가 눈에 띠는 답변을 받았습니다. klaus D. 라는 분께서 좋은 답변을 주셨습니다.

결론 : 해결방법

 유니코드가 경로명에 있으면 일반적으로 몇몇 라이브러리에 문제가 된다고 합니다. 근데 또 windows에서는 그런 문제가 잦죠. 이걸 저도 알고 있긴했는데 왜 그 당시에는 폴더명에 한글을 썼는지 모르겠습니다. 게임 설치할 때는 한글을 꼭 빼면서 말입니다.

그래서 경로명을 수정했습니다. 결과는 아주 깔끔하게 출력된다는 점 이었습니다.

 결국 윈도우에서 tox 실행 성공했습니다. tox는 테스트를 표준화 및 자동화를 목적으로 만들어진 도구입니다. 주로 여러 버전에서 자신의 프로그램이 정상작동하는가 즉 2.6 버전인 3.8 버전 등등 여러 버전에서 실행이 가능한가 테스트 하거나 여러가지 명령을 사용하여 자동으로 테스트할 때 사용하는 도구입니다.

 오늘은 UnicodeDecodeError에 대해서 알아보았습니다. 다음 글에서는 tox를 사용하는 방법에 대해서 소개해드리도록 하겠습니다. 감사합니다. 폴더명은 이제부터 꼭 한글말고 영어를 씁시다. 한국어가 만국 공용어가 되기전까지는말입니다. 🤣

댓글
최근에 올라온 글
최근에 달린 댓글
네이버 이웃추가
«   2024/03   »
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
글 보관함