ci occupiamo principalmente dell'emulazione di un browser per recuperare pagine Web, cercando di automatizzare i test su diverse pagine Web. Questo sarà usato per (idealmente) applicazioni console-ish che vengono eseguite in background e generano report.Emulazione di un browser web
Abbiamo provato ad andare con .NET e la biblioteca WatiN, ma è stato costruito su un Marshalled IE, e quindi mancava molte caratteristiche che abbiamo violato con chiamate a codice nativo non gestito, ma alla fine della giornata è IE non è sicuro da thread né processo sicuro e molte delle funzionalità necessarie potrebbero essere implementate solo modificando i valori del Registro di sistema ed è stato terribilmente poco flessibile.
- supporto proxy
- JavaScript SOSTEGNO- dobbiamo essere in grado di analizzare il DOM reale dopo ogni javascript ha eseguito (e, si spera viene generato un evento per gestire tutte le chiamate Ajax)
- possibilità di salvare tutti i contenuti della pagina incluso immagini dalla cache del pagina caricata in una posizione separata
- capacità di cancellare i cookie/cache, ottenere il cookie/cache, ecc
- possibilità di impostare le intestazioni e modificare i dati di post per ogni chiamata del browser
- di processo e/o di thread-safe sarebbe l'ideale
- E per l'amore di drogs, un'API che non è del tutto criptico
Lingue accettabili C++, C#, Python, tutto ciò che può essere un po 'di storia semplice applicazione che è abbastanza sopportabile e non ha una sintassi completamente "non tradizionale" come Ruby.
Dalla mia ricerca, e credetemi io sono terribile a ricerche di Google, ho sentito parlare bene di WebKit ... sarebbe il modulo Qt QtWebKit gestire tutte queste caratteristiche?
Non ne so abbastanza per sapere se può essere d'aiuto, ma in alcune edizioni di VS 2010 c'è qualcosa chiamato "Manual Testing" che consente di registrare le interazioni con una pagina web. È quindi possibile scavare nel codice e automatizzare il test, e presumibilmente mi è stato detto che ciò che registra è a livello http. Quindi il tuo codice di test funzionerebbe a un livello abbastanza basso. Non so quanto possa essere disordinato il codice generato. – AaronLS
Non è necessario apportare modifiche reali ai registri per IE; puoi dire a IE di usare una radice alternativa. – MSalters