Sto scrivendo un client che comunica con un server remoto su HTTP. Vorrei inserire un proxy malvagio tra il client e il server che influenzerebbe (casualmente?) Il traffico sul cavo.Evil proxy per testare l'interazione client/server
Alcune cose che vorrei accadere:
- ritardi arbitrari per la risposta
- errori HTTP arbitrarie
- questo scenario è difficile immaginare con TCP ma che cavolo: risposte troncati (vale a dire dati non corretti)
- indisponibilità temporanea (sebbene ciò sembri difficile dato che ciò dovrebbe essere fatto a livello di rete inferiore).
- errori personalizzati predefiniti (es: ogni richiesta ritorna con un errore di servizio)
Fondamentalmente Voglio simulare una serie di condizioni che gli utenti di questo software si sta per sperimentare fuori nel mondo reale messa in rete e assicurati che il client li gestisca con garbo.
Sospetto (spero) che qualcosa del genere esista già. Per favore indicami la giusta direzione!
Grazie
IIRC alcune società hanno costruito moduli simili per i test interni ... Non conosco alcun proxy libero o commerciale che consenta un tale controllo ... in pratica si dovrebbe iniziare con un proxy opensource esistente e modificarlo/estenderlo per le proprie esigenze ... – Yahia
Sì, ho trovato [Mallory] (http://intrepidusgroup.com/insight/mallory/). Supporta i plugin ma voglio vedere se c'è già qualcosa là fuori, prima di investire tempo nell'apprendimento di Python. – EightyEight
Penso che la scelta migliore sia prendere in giro le classi di interazione di rete, in modo da poter facilmente descrivere tali scenari nel codice del caso di test, altrimenti sarebbe piuttosto difficile gestire tale sistema. – kan