我遇到了將文件路徑發送到type =「file」字段(文件上傳場景)的問題,該字段處理有點奇怪。如何使用JavaScript將路徑注入到type =「file」字段中
我正在使用webDriver與Java和不希望使用第三方工具,如autoIT。
請注意,嘗試element.sendKeys不起作用,因爲默認情況下該字段會打開webDriver無法處理的OS瀏覽文件類型窗口。
下面你可以看到它的樣子:
<input type="file" size="40" name="filename">
這不會進一步擴大,並表示該字段+瀏覽按鈕!
唯一的解決方案,我發現如何可以適用於上述情況(沒有sendKeys和autoIT)是通過JavaScript注入,但我不知道如何做到這一點。
感謝,
維維安
使用'element.sendKeys()'是正確的方法。在這種情況下,瀏覽器驅動程序應該足夠聰明以解決OS文件選擇對話框的問題。我可以向你保證,這個方法不會在全球範圍內被破壞。 WebDriver項目已經針對這個確切的場景進行了測試,該場景已經被執行了數千次而沒有問題。 – JimEvans
嗨,吉姆!我看到你對這個問題的其他評論。我知道webDriver能夠做到這一點,這就是爲什麼我一開始感到困惑。問題在於它如何處理locator方式的這些字段,因爲我已經看到很多人在處理這些上傳類型=文件字段的例子。謝謝! –