Sto tentando di acquisire le query che il mio codice invia al database esaminando il contenuto di django.db.connection.queries
. Per qualche motivo, dopo che tutte le query di installazione prodotte automaticamente sono state registrate, non vengono registrate ulteriori query dal mio codice. Il seguente test case dimostra il comportamento.Come mai le query non vengono aggiunte a dba.connection.queries di Django nei test?
from django.test import TestCase
from django.db import reset_queries, connection
from django.contrib.auth.models import User
from django.conf import settings
class Test1(TestCase):
def setUp(self):
settings.DEBUG = True
def test1(self):
self.assert_(settings.DEBUG, 'DEBUG is False')
reset_queries() #clears out all the setup queries
User.objects.all()
self.assert_(connection.queries, 'No queries')
E qui sono i risultati di eseguirlo:
Traceback (most recent call last):
File "/Users/jacob/foo/bar_project/baz_application/tests.py", line 246, in test1
self.assert_(connection.queries)
AssertionError: No queries
qualcuno dovrebbe essere in grado di far luce su questo? Grazie.
Sono riuscito a superare il test. Vedi la mia risposta. –