2014-09-29 103 views

回答

0

我們不得不在運行我們的映射的自動化測試使用Selenium WebdriverIO一些成功。

我們處理地圖點擊的方式是通過從地圖腳本中暴露出一個函數,從中我們可以獲取地圖上要素的像素位置。

function pixelOfFeature (id) { 
    return map.getPixelFromCoordinate(...coordinate of feature...) 
} 

那麼在我們的測試腳本,一旦我們的加載映射頁面上,我們查詢我們想一下該功能的像素的地圖對象,並使用webdriverio我們便可以將鼠標移動到的像素值範圍內地圖css選擇器,然後執行.buttonPress()

var client = webdriverio.remote(options) 

client.moveToObject('.map', pixel[0], pixel[1]).then(function(){ 
    client.buttonPress(0).then(callback) 
}) 

http://webdriver.io/api/action/moveToObject.html

http://webdriver.io/api/protocol/buttonPress.html

我們使用ol3但是同樣的方法可以採取openlayers 2

它可能爲時已晚了OP但希望這可以幫助別人上手。

相關問題