那麼我知道硒世界充滿了文件上傳線程,這是我今天碰到的並且到目前爲止還沒有能夠解決的問題。儘管通過使用FF瀏覽器輸入文件上傳的文件輸入文本框來解決了這些問題。Selenium2 +另一個文件上傳
所以首先沒有文件輸入框。它只是一個按鈕,它會彈出一個選擇文件的文件,只要您選擇文件,上傳就會自動啓動。 HTML看起來像 -
<div id="container" style="position: relative;">
<div id="filelist"></div>
<br>
<a id="pickfiles">
<input type="button" name="Photos" value="Pick a File"></a>
<div id="p15tlsibt1185d1pi41tbd16c31a0n0_flash_container" style="position: absolute; top: 21px; background: none repeat scroll 0% 0% transparent; z-index: 99999; width: 86px; height: 18px; left: 0px;" class="plupload flash"><object width="100%" height="100%" data="/CKFinder/upload/content/runtimes/plupload.flash.swf" type="application/x-shockwave-flash" style="outline: 0pt none; background-color: transparent;" id="p15tlsibt1185d1pi41tbd16c31a0n0_flash"><param value="/CKFinder/upload/content/runtimes/plupload.flash.swf" name="movie"><param value="id=p15tlsibt1185d1pi41tbd16c31a0n0" name="flashvars"><param value="transparent" name="wmode"><param value="always" name="allowscriptaccess"></object></div></div>
所以我嘗試使用id /名稱等點擊,但無濟於事。我試過這樣的點擊 -
Commons.clickById(webDriver, "pickfiles")
但是頁面上沒有任何反應。
我也嘗試 - 代碼片段貼在這裏,它使用Java腳本exectuion -
cant click button which opens file attachment dialog
,但無濟於事。我總是遇到錯誤陳述 -
System.InvalidOperationException : arguments[0].click is not a function (UnexpectedJavaScriptError)
有什麼建議嗎?
我能夠點擊按鈕,因爲我之前通過錯誤的會話是錯誤的。儘管點擊按鈕並不能解決問題,因爲我需要在彈出的窗口中點擊文件進行選擇,並且文件結構在機器之間不會保持不變。我想用後臺調用來執行文件上傳,可能會使用HTMLUnit而不是瀏覽器。但是,但我需要選擇文件....一些如何... – Tarun 2011-04-19 09:13:49
看起來像我非常嚴重堅持這一點, 有沒有輸入框鍵入文件路徑和選擇文件從彈出窗口是非常糟糕的執行:( – Tarun 2011-04-19 13:56:56