0
現在、Webアプリケーション用のスクリプトをいくつか作成しています。私は現在、特定のボタンをピックアップしている。私はそれに数時間を費やしましたが、まだ運がありません。どんなアドバイスや指導も大歓迎です。私は下のソースコードと画像を加えました。Selenium - Java:特定の要素を選択するのに苦労します。
私の現在の失敗した試行:
chromeDriver.findElement(By.linkText("uploadfile")).click();
chromeDriver.findElement(By.xpath("html/body/div[9]/input")).click();
chromeDriver.findElement(By.xpath("//iput[@name='uploadfile']")).click
div style="display: block; position: absolute; overflow: hidden; margin: 0px; padding: 0px; opacity: 0; direction: ltr; z-index: 16777270; left: 835px; top: 313px; width: 232px; height: 46px; visibility: hidden;">
<input name="uploadfile" style="position: absolute; right: 0px; margin: 0px; padding: 0px; font-size: 480px; font-family: sans-serif; cursor: pointer; height: 100%; z-index: 16777270;" type="file">
我々はhtmlコードを必要としています。私たちと共有してください –
あなたはどのバージョンのSeleniumを使用していますか?あなたの3番目の試みは "入力"であって "iput"ではないと仮定します。 @PotnuruRaviが言ったように、私たちはもう少しデータが必要です、選択している要素がスクリプトの結果としてDOMに追加されていますか?それは最初からありますか?それは見える? Seleniumは、要素が見つからない場合、その要素の位置を特定することに問題があるかもしれません。最悪の場合は、このコマンド(javascriptExecutor)chromeDriverでドライバからjavascriptを実行してみてください.executeScript() –
Boaz
最新の編集後、入力を含むdivは表示されません(スタイルvisibility:divのhiddenを参照)。セレンは目に見える要素で動作します。そのdivが表示されるのを待つか(あなたのフローのステップが欠落していますか?WebDriverWaitを使ってDOMへの変更を待っていませんか?)、以前のexecuteScriptメソッドを使用してdivを表示するようにしてくださいコメント。 – Boaz