【问题标题】:Django Test - How to run tests with different settings file for a specific app?Django Test - 如何使用特定应用程序的不同设置文件运行测试?
【发布时间】:2014-08-23 06:14:36
【问题描述】:

我有一个项目,在这个项目中我有不同的应用程序。问题是,一个特定的应用程序是同一个项目中的另一个网站,并且使用不同的设置文件。

当我分开运行测试时,它运行良好,当我尝试一起运行所有测试时,使用不同设置文件的应用程序失败..

知道怎么解决吗?

我尝试将设置覆盖到 setUp 方法中,如下所示:

for s in dir(settings_appA):
    if getattr(settings, s) == None:
        setattr(settings, s, getattr(settings_appA, s))

当我这样做时,适用于特定网站,但不适用于其他应用程序..

有什么想法吗?

【问题讨论】:

  • 问题是 - 您正在混合项目和应用程序。设置文件属于一个项目,应用程序只在项目特定设置中定义自定义设置键。应该是这样的。

标签: django testing django-testing django-tests


【解决方案1】:
./manage.py test <app1> --settings=settings1
./manage.py test <app2> --settings=settings2

【讨论】:

  • 嘿@trinchet,谢谢您的回答。正如我之前所说,当我按照您的建议分开运行时,它可以工作。问题是我必须一起运行所有东西.. 我有 200 多个测试...
  • 哦...我明白了,为什么您需要使用不同的设置?也许您只需要使用不同的数据库、网址等...如果是这样,您可以编写自己的 DjangoTestSuiteRunner docs.djangoproject.com/en/1.5/topics/testing/advanced
猜你喜欢
  • 2016-10-11
  • 1970-01-01
  • 2011-06-01
  • 1970-01-01
  • 2023-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-28
相关资源
最近更新 更多