在Django中测试后端代码

在Django中测试后端代码,django,backend,Django,Backend,我正在用Django编写一个身份验证后端,只记录少数用户 它位于名为restrictedauthentication/的文件夹中,该文件夹位于Django项目的根目录下。(我写下来是为了一个特定的项目。) 它有两个文件:backend.py和tests.py 在最后一个文件中,我已经为它写下了一些测试。 但我无法使用命令/manage.py测试运行它们,因为它不是已安装的应用程序 有什么办法可以运行它们吗?好的,我找到了一个解决方案,可以阻止我将后端变成一个模块 有一点我不明白,这可能会帮助一些

我正在用Django编写一个身份验证后端,只记录少数用户

它位于名为restrictedauthentication/的文件夹中,该文件夹位于Django项目的根目录下。(我写下来是为了一个特定的项目。) 它有两个文件:
backend.py
tests.py

在最后一个文件中,我已经为它写下了一些测试。 但我无法使用命令
/manage.py
测试运行它们,因为它不是已安装的应用程序


有什么办法可以运行它们吗?

好的,我找到了一个解决方案,可以阻止我将后端变成一个模块

有一点我不明白,这可能会帮助一些初学者:在python中,测试无法自行运行。它需要由TestRunner执行

现在,可以使用
TextTestRunner
捆绑python执行测试并在标准输出上显示结果,但是当使用django进行测试时,需要在测试前后做一件事:调用函数
setup\u test\u environment()
teardown\u test\u environment()

因此,我刚刚创建了一个从
TextTestRunner
继承的类,并重新定义了它的methode
run()
,以便它执行Django提供的两个函数

这是:

from restrictedauthentification.tests import TestRestrictedAuthentification
from django.test.utils import setup_test_environment, teardown_test_environment
from unittest import TextTestRunner

class DeadSimpleDjangoTestRunner(TextTestRunner):
    def run(self, test):
        setup_test_environment()
        super().run(test)
        teardown_test_environment()

为什么不让它成为一个已安装的应用程序?你只需要一个空的models.py。这将是我最后希望的解决方案,因为我不想让我的后端成为一个应用程序,也不想创建一个空的model.py,但我希望有另一个解决方案:-)