我正在使用flask,postgresql和sqlalchemy以及在Eclipse中编码的web应用程序。 我正在使用python unittest来测试基本功能。
所以我正在编辑我的代码而错误地在评论中输入了∫。因为它是在评论中我没有费心去除它(我知道编码和所有,但我仍然做到了!)我运行我的unittest并且它没有进行任何测试,原因很明显。但问题是我无法找到错误的原因,直到我运行本地服务器,然后我才能找到错误。
我过去遇到过类似的问题,一些未知的小错误会导致我的测试开始甚至没有告诉我错误来源。
所以我的问题是有什么方法可以在使用python unittest模块时找到错误来源并避免上述情况?
答案 0 :(得分:3)
运行basic unittest example并添加# ∫
条评论会出现以下错误:
File "example.py", line 4
SyntaxError: Non-ASCII character '\xe2' in file x.py on line 4, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
使用python -m unittest example
我会得到相同的异常(回溯时间稍长)。
所以这似乎不是一个单位测试问题。 您是否使用Eclipse插件来运行测试?如果是这样,请尝试从命令行运行它;如果工作正常,这可能是该插件中的一个错误。