2014-04-24 41 views
3

我正在使用webdriver.io與chai和mocha進行測試。使用webdriver.io中的相同選擇器計算元素

在我的一個測試中,我需要計算頁面中有多少個具有相同CSS類的元素。 webdriver.io API似乎沒有返回數組。

如何實現?

+0

此鏈接:http://stackoverflow.com/questions/18677516/webdriverjs-finding-multiple-elements – Richard

+1

@理查德:好的,不幸的是,這個鏈接是關於webdriverjs的,而不是webdriver.io。 僅供參考:https://github.com/camme/webdriverjs#disclaimer – syymza

回答

7

這是你如何做到這一點:

client.elements('.myElements', function(err,res) { 
    console.log('element count: ',res.value.length); 
}); 

說明:與elements你根據獲取給定的選擇的所有元素。它返回一個webdriver元素數組,它代表頁面上現有元素的數量。

+1

謝謝,這確實有效。 是否有一個原因,當前沒有在網站上記錄.elements()方法(我的確在Github上發現了它)? – syymza

7

對於webdriver.io第4版,這是應該回答你的問題的方式

client.elements('.selector').then(function (elems) { 
    console.log(elems.value.length); 
});