2012-08-06 22 views
5

Bazı eski Watir betiklerimizi Watir-Webdriver'a geçirme sürecindeyim. Göç, pencereleri işlemek için Watir-Webdriver'ı nasıl tasarladıkları dışında, çoğunlukla iyi gitti. Denenmiş ve gerçek 'Attach' yöntemini kullanmak yerine, basitleştirilmiş bir 'Pencere' yöntemiyle değiştirdiler. Sözdizimi oldukça basit, ancak ebeveyn penceresini kapatmadan ayrı bir çocuk penceresinin nasıl kapatılacağını anlamakta zorlanıyorum. Watir Webdriver alt pencerelerin nasıl kapatılacağını

b.button(:xpath => PREVIEWBUTTON).click 
    b.window(:title, POPUPWINDOW).use DO 
    b.close 
    end 

anda neyi oluyor b.close yöntemi alt pencere ve ana penceresini hem kapanış olmasıdır - Şu benim kod şöyle bir şeydir. B.close yönteminin DO bloğunda yer aldığından bu neden böyle olduğundan emin değilim. 'PREVIEWBUTTON' aslında bir çocuk penceresi oluşturduğunu doğrulamak gerekiyor, ancak açık kalmak için ana pencereye ihtiyacım var.

cevap

9

bu deneyin:

b.window(:title, POPUPWINDOW).close 
+1

Mükemmel, bu çalıştı! Benim örneğimde, çocuk penceresini burada listelendiği gibi 'index' kullanarak bulmak çok daha avantajlı oldu - https://github.com/watir/watirspec/blob/master/window_switching_spec.rb. Tekrar teşekkürler! – Brian

+0

Çocuk pencerelerini bulmanın başka bir yolu var mı, belki de üzerinde yineleyin? – stack1