2012-05-28 12 views

risposta

2

È perfettamente soddisfacente per le pagine che pesano sull'ajax, potrebbe essere necessario eseguire alcune regolazioni dettagliate dei timeout per ciascun metodo che si chiama poiché non ci sarà necessariamente un segnale ovvio al selenio quando si eseguirà un ajax il metodo termina (come succede quando una pagina finisce di caricare).

cassa timeout utilizzo qui:

http://seleniumhq.org/docs/04_webdriver_advanced.html

+0

Il problema è che questo non è affidabile. Quanto dovrebbe durare il timeout? Cosa succede se la macchina di prova è caricata e impiega più tempo del solito? "clickAndWait" ha un comportamento ben definito, semplicemente aspetta fino a quando la nuova pagina non viene caricata. Preferirei se esistesse una specie di "clickAndWaitUntilGlobalFinishFunctionCalled". Una pagina potrebbe semplicemente provare a chiamare la finestra ["continueTesting"]. Se non fosse un ambiente di test, la funzione non esisterebbe e non si farebbe alcun danno. È qualcosa del genere disponibile? –

+0

Posso interpretare male la tua domanda, ma se hai un metodo js che si attiva quando la pagina ha completato tutte le richieste ajax in sospeso (è questo che intendi per GlobalFinishFunction?), Potresti avere quel metodo per cambiare un elemento nel DOM in un modo predeterminato e utilizzare un'attesa esplicita, come nell'esempio sotto il collegamento, per trovare l'elemento modificato. – silijon

+0

OK, grazie! Sì, questo è quello che intendevo. Se usare un elemento è il modo migliore, suppongo di poter vivere con quello. :) Grazie ancora. –

0

Sì. Può essere usato per farlo. Se consente di simulare clic sul pulsante e attendere il caricamento dei risultati.

Non dovresti avere problemi con un'applicazione singola.

Dispone di strumenti per registrare i passaggi e creare casi di test. Provaci. Dovrebbe essere molto facile anche per un principiante.

Problemi correlati