gpt4 book ai didi

python - "Empty test suite"通过使用 Pycharm 运行 Django 测试(如果从 shell 启动则发现测试)

转载 作者:行者123 更新时间:2023-11-28 20:20:39 25 4
gpt4 key购买 nike

我很难尝试使用 PyCharm 运行我的 Django 测试。我过去使用“python 运行配置”很容易做到这一点,其中我使用 manage.py 来运行它们,我在 OSX 上使用 python 2.7,Django <= 1.7,Pycharm <= 4 .现在我在 Linux Mint 上,我使用 Python 3.4.3、Django 1.8.2 和 Pycharm 4.5。我一直使用 virtualenv 来管理我的项目。现在,通过从 Pycharm 运行“manage.py test”,没有找到任何测试(它打印“Empty test suite”)。但是存在测试,如果我从 shell 运行命令,它们就会被执行。所以我真的不明白这是怎么回事。我实际上能够使用我创建的“hack”启动测试,但问题是 Pycharm 无法附加到进程以允许在测试中使用断点(这是我最常使用的功能之一!) .我的“技巧”如下:

我创建了一个 python 脚本:

import subprocess


def main():
subprocess.call('./venv_activator.sh', shell=True)


if __name__ == '__main__':
main()

然后是一个 bash 脚本(venv_activator.sh):

#!/usr/bin/env bash
source .ENV/bin/activate
python manage.py test myapp -p "*_tests.py" --noinput -v 2 --settings=settings.test

在实践中,python 脚本用于为 Pycharm 创建“python 运行配置”,然后激活 virtualenv 并调用 django 测试命令。

ps:是的,我在PyCharm中开启了“Django支持”(并且我在virtualenv下配置了python解释器)

最佳答案

问题是 PyCharm 没有为测试文件应用给定的搜索模式 (-p "*_tests.py")。这是一个已经报告的错误:https://youtrack.jetbrains.com/issue/PY-15869

解决方案是简单地重命名我的文件 :P

关于python - "Empty test suite"通过使用 Pycharm 运行 Django 测试(如果从 shell 启动则发现测试),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30568207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com