2010-11-18 19 views
4

Ich brauche eine Möglichkeit, Konnektivitätsprobleme in einer automatisierten Testsuite auf Linux und vorzugsweise von Python zu simulieren. Eine Art Proxy, den ich vor den Web-Server stellen kann, der Verbindungen nach einem oder dem anderen Trigger (nach dem Übertragen von X-Bytes usw.) hängen oder löschen kann, wäre perfekt.Web Proxy, um Netzwerkprobleme zu simulieren

Es scheint nicht zu schwer zu bauen, aber ich würde eher etwas Vorhandenes greifen, wenn jemand gute Empfehlungen hat.

Antwort

2

Wenn ich eine benötigte, fand ich, dass es selbst das beste Ding ist. Beginnen Sie, indem Sie einen Thread-Server in Python http://docs.python.org/dev/library/socketserver.html (Sie müssen nicht die Klasse selbst verwenden) zu erhöhen. und es ist sehr einfach: im neuen Verbindungs-Thread, erstellen Sie einen neuen Socket und verbindet es mit dem realen Server. dann fügen Sie beide in eine Liste ein und senden sie an select.select (Import select). dann, wenn Socket x Daten empfangen - sendet es an y. Wenn der Socket y Daten empfängt, wird er an x ​​gesendet. (Vergessen Sie nicht, den Socket zu schließen, wenn Sie eine leere Zeichenfolge erhalten).

jetzt können Sie tun, was Sie wollen ..

wenn Sie etwas brauchen, ich bin hier ..

+0

Yep, landete ich aus einem anderen Grund tun dies auf (tatsächlich Verkehr auf der Fliege Modifizierung durch zu einem ziemlich schlecht benehmen Server) vor etwa einem Jahr. Das Ganze war vielleicht 30 Zeilen Python. P.S. Hallo Don: P –

+0

Ich werde sehen, ob ich das heute später gehen kann. – DonGar

+0

PS: Hey Nick, lange nicht gesehen! – DonGar

Verwandte Themen