2011-03-18 18 views
6

Testim ile Firefox kullanıyorum ancak flaş düğmelerine tıklandığında bir sorun var. Flash elemanlarının kaynak kodlarına erişimim yok, bu yüzden flash-selenium veya test için benzer bir şey kullanamam.Mümkünse selenium2 webdriver ile belirli koordinatları tıklayın C#?

Şu anda benim çözümüm, Windows api ile ekran görüntüsünü almak ve ekran görüntüsünü işlemek ve üzerine tıklamam gereken düğme koordinatlarını tanımlamak, daha sonra tekrar koordinatlara tıklayarak Windows api ile.

Ancak bu şekilde, bilgisayarımı başka bir şey için kullanamıyorum ve webdriver'ın kendi işlevlerinden farklı olarak pc'yi etkilemek için beklemem gerekiyor.

Firefox sayfasında webdriver ile bir ekran görüntüsü almayı deniyorum (aslında bitti) ve bu ekran görüntüsüne flaş düğmesinin alan koordinatlarını alıyorum ve öğeyi temel almadan tıkladığımdan, çünkü bunu kontrol etmek için kullanıyorum. Mümkün selenium ide, clickat gibi işlevlerle tıklayamıyorum veya yanlış bir şey yapıyorum.

+0

O C Sharp telaffuz ediliyor. Sorun ne? – Rob

cevap

6

Selenium 2'de, fareyi belirtilen koordinatlara benzetmeyi simüle edebilecek ve Gelişmiş Kullanıcı Etkileşimleri API'sinde MoveToOffsetAction'u tıklatarak kullanabilirsiniz. Bu şu anda hala geliştirme aşamasındadır ve henüz Firefox veya Internet Explorer sürücülerinde desteklenmemektedir. http://code.google.com/p/selenium/wiki/AdvancedUserInteractions

+0

htmlunit flaş desteği var mı? ya da en azından bir ekran görüntüsünde gösterme yeteneği var mı? – motto

+1

htmlunit tamamen başsız, ekran görüntüsü veya flash yetenekleri yok. –

0

Sen Java yapabilirsin aşağıdaki gibidir:: İleri Kullanıcılar Etkileşimler API

fazla detay projenin resmi wiki sayfasından bulunabilir

Actions uploadbtn = new Actions(driver); 
uploadbtn.moveToElement(addfile, 518, 558).click().build().perform(); 

where X co-ordinates=518 
and Y Co-ordinates=558 
İlgili konular