如何与其他测试一起运行Django应用程序测试?

时间:2011-07-13 16:19:03

标签: python django unit-testing testing

我正在开发一个由两个Python包组成的项目。 foo包含一些常见的业务逻辑,foo.webapp包含一个Django应用程序,通过它提供API。模块foo.tests包含公共逻辑的unittest个案例,以及API的foo.webapp.tests个案例。另外还有一个用于运行API的Django项目。所以它看起来像这样:

foo-root/
    foo/
        __init__.py
        some_logic.py
        other_logic.py
        tests.py
        webapp/
            __init__.py
            urls.py
            views.py
            tests.py

    django_project/
        manage.py
        settings.py
        urls.py

我希望foo.testsfoo.webapp.tests分开,所以当我django_project/manage.py test时,它应该只运行后者。但是我也想要一种方法来同时运行两个测试套件,一个进度条,一个失败计数等。我可以完成这个,如果是,那怎么办?

1 个答案:

答案 0 :(得分:1)

我按照django-alltestsrunner的方式编写了一个自定义Django测试运行器(但是我没有自动发现测试,而是在settings中指定了一个模块列表。)

现在,当我执行django_project/manage.py test时,它会运行所有测试。当我执行django_project/manage.py test foo.webapp.tests时,它只运行API测试。