2 Stimmen

Wie führe ich einen Django-Testfall aus?

Ich verwende Twisted, um eine Variable in meine Django-Umgebung zu übergeben, so dass ich den Twisted-Server ausführen muss. Wenn ich also meine Django-Anwendung teste, muss ich den Twisted-Code wirklich ausführen

läuft es in etwa so ab:

def wsgi_resource():
    pool = threadpool.ThreadPool()
    pool.start()
    # Allow Ctrl-C to get you out cleanly:
    reactor.addSystemEventTrigger('after', 'shutdown', pool.stop)
    wsgi_resource = wsgi.WSGIResource(reactor, pool, WSGIHandler())
    return wsgi_resource

wsgi_root = wsgi_resource()
reactor.listenTCP(DJANGO_PORT, server.Site(wsgi_root))

Wie kann ich überhaupt mit dem Testen dieses Codes beginnen? Ich muss Twisted ausführen, weil meine Ansichten etwas wie dieses verwenden:

blockingCallFromThread( reactor, engine.push_message, user_hexid, room_hexid, message)

um die von mir übergebene Variable aufzurufen.

0voto

Glyph Punkte 30137

Sie können Tests schreiben mit Twisted's eingebauter Test Runner, trial vorausgesetzt, Sie starten Ihren WSGI-Threadpool vor jedem Test und stoppen ihn danach (in setUp und tearDown).

Die kommende Version 11.1 enthält eine neue Dokumentation für die testgetriebene Entwicklung mit Twisted unter Verwendung von Trial. Bis diese an der offiziellen Stelle verfügbar ist, gibt es hier eine temporärer Link zu einem Buildbot-Build unserer Dokumentation.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X