我有一个Django项目,其中有一堆测试,我刚刚导入到PyCharm中。我设法配置了它,这样我就可以运行服务器,工作正常,但现在我想运行测试。我尝试创建一个基于路径的测试配置,并给出manage.py路径和测试命令以及我的设置文件作为参数,但我得到以下神秘的错误消息:
Testing started at 10:12 ...
/Users/jonathan/anaconda/bin/python "/Applications/PyCharm CE.app/Contents/helpers/pycharm/_jb_unittest_runner.py" --path /Users/jonathan/Work/GenettaSoft/modeling-web/modeling/manage.py -- test --settings=Modeling.settings.tests
Launching unittests with arguments python -m unittest /Users/jonathan/Work/GenettaSoft/modeling-web/modeling/manage.py test --settings=Modeling.settings.tests in /Users/jonathan/Work/GenettaSoft/modeling-web/modeling
usage: python -m unittest [-h] [-v] [-q] [--locals] [-f] [-c]
[tests [tests ...]]
python -m unittest: error: unrecognized arguments: --settings=Modeling.settings.tests
Process finished with exit code 2
Empty test suite.
它一定是以某种错误的方式运行。难道这一点都做不到吗?
Ps.我发现Running Django tests in PyCharm,但它似乎没有相关的所有(旧得多的版本?),因为我得到不同的错误和事情看起来非常不同。
3条答案
按热度按时间xkftehaa1#
你可以使用标准的python配置,而不是python unittest进行django测试。只需添加新的python运行/调试配置,选择
manage.py
作为文件并指定参数test --settings=Modeling.settings.tests
。lawou6xi2#
您还可以编辑PyCharm的测试运行器助手脚本。它位于
/opt/JetBrains/PyCharm/plugins/python-ce/helpers/pycharm/_jb_nosetest_runner.py
。然后执行import django
,并在主入口点之后立即执行django.setup()
。为了完整起见,我已经从我的机器中包含了整个文件。然后,您可以右键单击
Project
工具窗口中的任何测试,然后单击Run test
。您也可以右键单击单元测试文件所在的任何目录,然后单击Run Unittests in tests
。**注意:**在运行单元测试之前,您需要确保将所有必需的环境变量添加到运行配置中。
5vf7fwbs3#
这个解决方案是针对PyCharm Professional的,所以我不知道它是否适用于PyCharm CE。打开设置,搜索“Django”,并启用“Django支持”。填写Django根项目路径和设置文件路径。保存设置。现在你可以直接从编辑器运行Django测试了。