今天使用pycharm跑自动化用例时,突然报错ImportError: Failed to import test module: xxx,很纳闷,之前好好的,突然就跪了。
详细报错如下:
ft1.1: ImportError: Failed to import test module: test_003_desktop
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\unittest\loader.py", line 436, in _find_test_path
module = self._get_module_from_name(name)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\unittest\loader.py", line 377, in _get_module_from_name
__import__(name)
File "D:\IPG-Projects\IPG-ApplyManage\TestCases\test_003_desktop.py", line 34
SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xd7 in position 0: invalid continuation byte
经过网上一顿排查,没有结果,也是过重启pycharm,都没解决。。
尝试在用例(test_003_desktop.py)文件直接跑,结果提示No tests were found如下:
对比两次错误,发现都提示编码有问题~ 回想今天的操作:在用pycharm打开一个有中文内容的文件时,显示乱码并提示需要用GBK编码打开:
结果不小心手快点了Set project encoding to 'GBK'(原本应该点relaod的)。结果这操作,应该是导致pycharm所有文件(包括.py文件)都用GBK编码了??
解决方案:
选择测试用例文件,选择菜单:File - File Properties - File Encoding,在弹出的小窗口中,选择UTF-8,并选择convert。
问题就解决了。
其实一开始,如果对pycharm熟悉的,在pycharm底部状态栏,也能快速看到当前文件的编码格式。