在django中调试测试时检查数据库

时间:2018-04-29 18:55:33

标签: django database debugging django-testing

我需要在测试期间检查数据库。

我将设置更改为:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        'TEST': {
            'NAME': os.path.join(BASE_DIR, 'test_db.sqlite3'),
        }
    }
}

现在我跑的时候:

python3 manage.py test --keepdb  accounts

我用test_db.sqlite3完成,问题是这个数据库在测试之后和测试期间一直是空的。

我正在执行此代码:

    def test_add_members(self):
    pp_castrillon = GrupoPolitico(nombre_grupo="PP", alcance=self.test_concejo)
    pp_castrillon.save()

    print(pp_castrillon.miembros.count())

    user_a = User(username="A_test")
    user_b = User(username="B_test")
    user_c = User(username="C_test")

    user_a.save()
    user_b.save()
    user_c.save()

    user_a.residencia.add(self.test_concejo)
    user_b.residencia.add(self.test_concejo)
    user_c.residencia.add(self.test_concejo)

    pp_castrillon.grupo.user_set.add(user_b)
    pp_castrillon.miembros.add(user_a)
    pp_castrillon.grupo.grupo_de.add_member(user_c)

    pp_castrillon.save()

    for miembro in pp_castrillon.miembros.all():
        print(miembro)

    for miembro in pp_castrillon.grupo.grupo_de.miembros.all():
        print(miembro)

    for miembro in pp_castrillon.grupo.user_set.all():
        print(miembro)


    print(user_a.miembro.all())

    print(pp_castrillon.miembros.count())

此函数测试位于扩展django.test.TestCase

的类中

我怎么能这样做?

0 个答案:

没有答案