使用Pycharm 2017.1.3(但在其他版本中也看到了)- 在运行单个测试(右键单击测试并运行)时,自动创建的测试目标配置是错误的-在类名之前放置点(。)而不是冒号(:),因此看起来像是一个函数。因此,在运行单个测试时,出现此错误:
Traceback (most recent call last):
File "/Users/...../python3.6/site-
packages/nose/failure.py", line 39, in runTest
raise self.exc_val.with_traceback(self.tb)
File "/Users/...../python3.6/site-
packages/nose/loader.py", line 523, in makeTest
return self._makeTest(obj, parent)
File "/Users/...../python3.6/site-
packages/nose/loader.py", line 576, in _makeTest
if issubclass(parent, unittest.TestCase):
TypeError: issubclass() arg 1 must be a class
例如,此目标:
myproject.utils.tests.test_integration.MyNewService.test_use_case
应为:
myproject.utils.tests.test_integration:MyNewService.test_use_case
答案 0 :(得分:0)
无论PyCharm是否发生这种情况,NoseTest都在文件名和类之间寻找:
分隔符
如果您使用其他测试服运行,它将运行
通常,PyCharm正在运行测试助手以运行测试
如果您覆盖其默认值(例如更改TEST_RUNNER
值),则可能会遇到问题
答案 1 :(得分:0)
经过调查,问题似乎出在自定义settings.py
文件名上。
PyCharm不会自动发现它,因此需要在其中手动配置
首选项|语言和框架| Django |设置