我是新來的硒,所以我不知道這是否是解決問題的最佳方法,但我正在尋找一種方法來使用xpath(或css)來找到一系列輸入元素,並以某種方式迭代所有元素,然後在其中輸入一些文本。使用硒輸入多個元素使用xpath
類似如下:
<form>
value1 <input type="text" placeholder="value1"><br>
value2 <input type="text" placeholder="value2"><br>
value3 <input type="text" placeholder="value3"><br>
</form>
我能夠使用此定位元素:
var input = driver.findElement(By.xpath("//input[@type='text']"))
我可以輸入通過的xpath與下列發現該元件第一次出現的:
input.sendKeys('Some text')
這就是我卡住的地方。我不知道如何在第一個輸入字段後輸入值。
最終,我想要做的就是將文本發送到xpath過濾器定位的所有輸入字段。我認爲這可能是一個for循環,但我不知道如何使用webdriverjs使用的承諾管理器。
這是可能的還是有更好的方法來做到這一點?
將會有一個findElements方法是你正在使用的複數。這將返回一個列表,您可以迭代並輸入值。奇異findelement將始終返回它在頁面中找到的第一個匹配元素。 – Grasshopper
謝謝,這讓我更進一步。仍然試圖找出如何迭代元素。 – jmreicha
看看這個答案http://stackoverflow.com/questions/18677516/finding-multiple-elements – Grasshopper