2009-03-06 7 views
0

Ich versuche, Fehlfunktionen für Software zu testen, die mit einem Webdienst interagiert, und ich habe bereits Probleme gemeldet, bei denen Probleme auftreten, wenn die Software nicht rechtzeitig reagiert (z. B. wartet sie eine Minute oder länger). Ich möchte das simulieren, damit ich Probleme selbst aufspüren und beheben kann, aber das Trennen der Netzwerkverbindung funktioniert nicht, da es sofort ohne gefundene Route zurückkehrt.Wie kann ich einen aufgehängten Webservice simulieren?

Was ich gerne wissen würde ist, gibt es eine einfache Möglichkeit, ein CGI-Skript, das eine Verbindung akzeptiert, aber nur sitzt dort, hält die Verbindung für mehrere Minuten am Leben, ohne eine Art von Schleife while (true) {} machen?

Antwort

3

Wie wäre es, das Skript für einige (sehr lange) Zeit schlafen zu lassen?

3

Ich weiß nicht, welche Sprache Sie für Ihre Scripting verwenden, aber in .net könnte man so etwas wie Thread.Sleep(6000);

0

Sie müssen in irgendeiner Weise im Leerlauf tun, da, wenn Ihr CGI-Skript die Verbindung zurück erhalten geschlossen.

Wenn Ihr Netzwerkgerät die Drosselung unterstützt, möchten Sie möglicherweise den ausgehenden Datenverkehr auf etwas lächerlich Niedrig beschränken.

3

HTTP Fiddler ist hervorragend für diese Art von Sache. Sie können langsame Verbindungen simulieren und, wenn Sie möchten, "brechen", wenn eine Anfrage eingeht, damit Sie eine Antwort simulieren können, die nie wiederkehrt.

Go es von hier ... http://www.fiddlertool.com/fiddler/