In Django spesso affermano il numero di query che dovrebbe essere fatto in modo che i test di unità catturare nuovi N + 1 problemi di querycome contare SQLAlchemy query in unit test
from django import db
from django.conf import settings
settings.DEBUG=True
class SendData(TestCase):
def test_send(self):
db.connection.queries = []
event = Events.objects.all()[1:]
s = str(event) # QuerySet is lazy, force retrieval
self.assertEquals(len(db.connection.queries), 2)
In in SQLAlchemy tracciare STDOUT è abilitata impostando il flag echo
su motore
engine.echo=True
Qual è il modo migliore per scrivere test che contano il numero di ricerche effettuate dagli SQLAlchemy?
class SendData(TestCase):
def test_send(self):
event = session.query(Events).first()
s = str(event)
self.assertEquals(... , 2)