在我的PyCharm(2016.3.3)项目中,我有一个名为'tests'的包文件夹,它包含一些测试模块(使用unittest
),例如'test_A.py,''test_B.py。'
当我尝试在其中一个模块中运行测试,或者在整个'tests'包中进行所有测试时,由于nose_helper.failure.Failure
,我得到AttributeError: 'module' object has no attribute 'test_A'
(对于其他测试模块也是如此) )。
当我在PyCharm之外运行模块时,它们可以毫无问题地工作。
有谁知道原因,以及如何解决这个问题?
答案 0 :(得分:0)
不知道具体原因,但在我的PyCharm(2016.3.3)中,我能够通过编辑运行配置来解决问题:
从菜单栏中选择Run-> Edit Configurations,然后选择您的配置,并在“Unittests”下的“Configuration”选项卡中选中“仅检查unittest.TestCase的子类。”
要设为此默认设置:运行 - >编辑配置,然后选择默认值 - > Python测试 - >单元测试,并再次选中相同的框。
此答案基于ancient PyCharm support post。
- 编辑 -
如果测试模块试图导入一个不存在的类,例如在PyCharm 2018.3中也会发生这种情况。 (使用django)from myapp.models import MyModelA, MyModelB
其中MyModelB
不存在。在这种情况下,修复导入应该可以解决问题。