Sto migrando alcuni dei nostri script Watir precedenti su Watir-Webdriver. La migrazione è andata per lo più bene, tranne per come hanno progettato Watir-Webdriver per gestire le finestre popup. Piuttosto che usare il metodo "Allega" provato e vero, lo hanno sostituito con un metodo "Finestra" semplificato. La sintassi è abbastanza semplice, tuttavia ho difficoltà a capire come chiudere una finestra figlio separata senza chiudere la finestra genitore. Attualmente il mio codice è qualcosa di simile -Watir Webdriver come chiudere le finestre secondarie
b.button(:xpath => PREVIEWBUTTON).click
b.window(:title, POPUPWINDOW).use DO
b.close
end
Attualmente ciò che sta accadendo è che il metodo b.close sta chiudendo sia la finestra bambino e finestra padre. Non sono sicuro del motivo per cui ciò accade poiché il metodo b.close è contenuto nel blocco DO. Devo verificare che "PREVIEWBUTTON" crei effettivamente una finestra secondaria, ma ho bisogno che la finestra principale rimanga aperta.
Eccellente, questo ha funzionato! Ho anche appreso che, nel mio caso, è molto più vantaggioso trovare la finestra secondaria usando "indice" come elencato qui - https://github.com/watir/watirspec/blob/master/window_switching_spec.rb. Grazie ancora! – Brian
C'è qualche altro modo per trovare finestre secondarie, magari anche iterare su di esse? – stack1