Je ne peux pas utiliser TransactionTestCase.assertNumQueries docilement parce que j'ai dérangé la connexion DB pour les tests. Au cas où.
# coding: utf-8
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings")
from django.conf import settings
from django.db import connections
import unittest, pprint
from collections import deque
from core.models import Kvs, Hoge
class TestKvs(unittest.TestCase):
    def setUp(self):
        settings.DEBUG = True
    def tearDown(self):
        # django.db. reset_les requêtes sont bien
        connections['default'].queries_log = deque()  
        settings.DEBUG = False
    def test_simple(self):
        hoge = list(Hoge.objects.all())[0]
        # select
        self.assertEqual(len(connections['default'].queries), 1)
        Kvs.set(hoge.id, hoge)
        # select, begin, update
        self.assertEqual(len(connections['default'].queries), 4)
        got = Kvs.get(hoge.id)
        # select
        self.assertEqual(got.id, hoge.id)
        self.assertEqual(len(connections['default'].queries), 5)
if __name__ == "__main__":
    unittest.main()
Référence: [Django: existe-t-il un moyen de compter les requêtes SQL à partir d'un test unitaire?](Http://stackoverflow.com/questions/1254170/django-is-there-a-way-to-count-sql-queries- à partir d'un test unitaire)