1. ホーム
  2. java

[解決済み] Selenium Web Driverを使ってHTML入力の値を取得する

2022-05-12 20:16:25

質問

あるWebアプリケーションのHTMLに、次のようなコードがあります。

<input type="text" name="prettyTime" id="prettyTime" class="ui-state-disabled prettyTime"  readonly="readonly">

実際にページに表示されるのは、時刻を表示する文字列です。

Selenium Web Driverで、私は WebElement オブジェクトを参照しています。 <input> を使って

WebElement timeStamp = waitForElement(By.id("prettyTime"));

の値を取得したい。 WebElement の値を取得したいのですが、言い換えれば、ページに印刷されているものを取得したいのです。私はすべての WebElement ゲッターをすべて試しましたが、何もユーザーが見る実際の値を取得することはありませんでした。何か良い方法はないでしょうか?ありがとうございます。

どのように解決するのですか?

これはちょっと面倒ですが、うまくいきます。

私は JavascriptExecutor を追加し、さらに div を HTML に追加し、その中のテキストを div のテキストを $('#prettyTime').val() その後、Seleniumを使って div を取得し、その値を取得しました。その値が正しいかどうかをテストした後、先ほど作成されたdivを削除しました。