2012-12-31 9 views
5

UI'nin büyük bir kısmını sunmak için ExtJS kullanan bir web uygulamasının test edilmesini otomatikleştiren Geb ile çalışıyorum. 'Kategorileri' temsil eden birkaç ExtJS tarafından oluşturulan tablo hücrelerini ctrl-tıklamanız gereken bir durumdayım. Bunları ctrl-tıklatmak için Gebeyi nasıl kullanırım?Gebelik kullanarak öğeleri nasıl kontrol edebilirim?

Actions actions = new Actions(driver) 
actions = actions.keyDown(Keys.CONTROL) 
actions = actions.click(categoryItem) 
actions = actions.keyUp(Keys.CONTROL) 
actions.perform() 

Not:

def categoryItem = $("div.category-item-title", text: categoryName).firstElement() 

Sonra Eylemler kontrol tuşuyla tıklayın eylemler eklemek için kullanılabilir nesne:

cevap

2

kullanıyorum doğrudan WebDriver WebElement nesneye erişim firstElement vardı kontrol tıklamayı yapmak için Bu kod, bir sayfa nesnesinin örnek yöntemindedir.

interact { 
    keyDown(Keys.CONTROL) 
    click($("div.category-item-title", text: categoryName)) 
    keyUp(Keys.CONTROL) 
} 
+1

önerdiğiniz çözüm daha da basit yapımında Geb yardımcıları size unutmayınız - [kapatılmasını etkileşim] (http hakkında manuel bölümüne göz atın: Burada

sözü 'etkileşim' mekanizması erdi kullanarak aynı kodudur: //www.gebish.org/manual/current/navigator.html#drag_and_drop) – erdi

+0

Bu belgeyi taşımak, "sürükle ve bırak" bölümünün altında saklanmaması için başkalarının zamanından tasarruf etmesine yardımcı olabilir. –

+0

Öneriniz için şimdiden bir biletimiz var: http://jira.codehaus.org/browse/GEB-207 – erdi