Domanda

Uso l'automazione del browser per testare i siti Web ma devo verificare le richieste HTTP dal browser (ad esempio immagini, script esterni, oggetti XmlHttpRequest). C'è un modo per creare un'istanza a livello di programmazione di un proxy che il browser può utilizzare per vedere che cosa sta inviando?

Sto già usando Fiddler per guardare il traffico, ma voglio qualcosa che sia UI-less e che possa usare in integrazione continua della build.

È stato utile?

Soluzione

Ho esaminato brevemente la stessa cosa e ho considerato due soluzioni (ma non le ho ancora provate).

Il primo suggerimento che ho sarebbe di utilizzare la classe HttpListener (e possibilmente Webclient o altre classi relative a System.Net http per inviare nuovamente le richieste all'applicazione) come proxy per le chiamate di test WebBrowser. Non ho esperienza con HttpListener, ma sembra un modo semplice e promettente per eseguire il proxy delle chiamate alla tua app.

Il secondo suggerimento che ho è quello di fare quello che fa Fiddler: toccare nello stack WinINET Http sul tuo computer di prova per agire come proxy (con una sorta di filtro per restringerlo a SOLO le chiamate del tuo WebBrowser). Sfortunatamente, il miglior esempio di ciò che ho potuto trovare è Fiddler stesso e l'unico modo che conosco per ottenere il codice è Reflector. Potrebbe essere possibile ottenere il codice proxy Fiddler in un altro modo, ma non ho avuto il tempo di indagare completamente su questo percorso.

HTH !, Richard

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top