Django立即运行所有测试

Ahm*_*DAL 2 python django django-testing

我正在使用Django==1.7c2,我不想说要Django在我的项目中找到并运行所有测试.我刚刚创建了一个文件夹,__init__.pytests不是将所有文件放在tests.py中.这是我的文件结构;

my_project/apps/my_app/
??? __init__.py
??? tests
    ??? __init__.py
    ??? my_first_test.py
    ??? my_second_test.py
??? ....
??? ....
??? ....
Run Code Online (Sandbox Code Playgroud)

__init__.py的测试文件就像;

from my_first_test import *
from my_second_test import *
Run Code Online (Sandbox Code Playgroud)

我以为这最初Django会认出我test folder,但是当我只运行这个命令时;

python manage.py test
Run Code Online (Sandbox Code Playgroud)

Django没有运行的测试用例.

$ python manage.py test
Creating test database for alias 'default'...

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK
Destroying test database for alias 'default'...
Run Code Online (Sandbox Code Playgroud)

我必须在我的项目中运行特定应用程序的测试;

python manage.py test my_project.apps.my_app.tests
Run Code Online (Sandbox Code Playgroud)

结果;

----------------------------------------------------------------------
Ran 7 tests in 1.432s

OK
Destroying test database for alias 'default'...
Run Code Online (Sandbox Code Playgroud)

我真的不喜欢它,因为我需要立即在我的项目中的所有应用程序中运行所有测试,而不是逐个运行它们.我不知道我错过了什么.

有没有办法说Django在项目的所有应用程序中立即找到并运行所有测试?

谢谢!

#Edited

我在应用程序INSTALLED_APPS中的我setting.py

Ale*_*voy 7

试试这个:

$ ./manage.py test --pattern="*_test.py"
Run Code Online (Sandbox Code Playgroud)

测试发现基于unittest模块的内置测试发现.默认情况下,这将在名为"test*.py"的任何文件中发现测试.

注意

顺便提一下,__init__.py如果使用标准测试发现,则不需要在文件中导入TestCases (Django从1.6开始使用内置测试发现)