2013-08-28 10 views

risposta

6

Non senza uno strumento esterno n.

Si vede, questo è stato sollevato un numero di volte in passato ed è uno dei più grandi "problemi" all'interno di Selenio official issue tracker. Il particular issue è stato rimbalzato intorno e in sostanza ha deciso che è al di fuori del campo di applicazione del Selenium.

Tuttavia, ciò non significa che non sia possibile. Per fortuna, stai usando C#, quindi è un po 'più facile di quanto tu possa pensare.

Recentemente, uno degli sviluppatori di Selenium ha scritto un post sul blog che illustra exactly how to do this in C#. Si tratta di un post sul blog in tre parti per aiutare a spiegare ogni passaggio e utilizza uno strumento esterno, chiamato Fiddler (che, a proposito, è uno strumento fantastico).

Fiddler è un proxy e ha un'API C# che consente di intercettare le richieste. Significa quindi che puoi semplicemente "puntare" il selenio per utilizzare quel proxy e quindi collegarlo all'API di Fiddler per verificare esattamente quale codice di stato ha la richiesta.

Sto semplicemente collegando al post del blog piuttosto che fornirgli il codice poiché è abbastanza spiegato in questi post.

Forse provarlo, e poi tornare se si verificano problemi nella sua progettazione. Tra l'altro il ragazzo è anche un membro qui su StackOverflow, quindi potrebbe anche vedere il tuo post.

0

Non è l'ideale, ma ho confrontare il testo della pagina contro seguente espressione regolare in quanto il mio setup quel testo accompagna gli errori di pagina Web:

(?:(access is denied)|(access is forbidden)|(server error)|(not found))