[解決済み] Selenium WebDriverを使用して要素が存在するかどうかをテストしますか?
2022-03-09 10:27:10
質問
ある要素が存在するかどうかをテストする方法はありますか?なぜなら、要素が存在しないことがあり、それは問題なく、テストの失敗ではないので、例外が解決策になることはありえません。
こんな投稿がありました。 Selenium c# Webdriver: 要素が存在するまで待つ しかし、これはC#のためのもので、私はあまり得意ではありません。誰かこのコードをJavaに翻訳してくれませんか?私はみんなごめんなさい、Eclipseでそれを試してみましたが、私はそれをJavaコードに正しく取り込むことはできません。
これがそのコードです。
public static class WebDriverExtensions{
public static IWebElement FindElement(this IWebDriver driver, By by, int timeoutInSeconds){
if (timeoutInSeconds > 0){
var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(timeoutInSeconds));
return wait.Until(drv => drv.FindElement(by));
}
return driver.FindElement(by);
}
}
解決方法は?
使用方法
findElements
の代わりに
findElement
.
findElements
は、マッチする要素がない場合は例外ではなく、空のリストを返します。
ある要素が存在するかどうかを確認するには、次のようにするとよいでしょう。
Boolean isPresent = driver.findElements(By.yourLocator).size() > 0
これは、少なくとも1つの要素が見つかればtrueを、存在しなければfalseを返します。
公式ドキュメント はこの方法を推奨しています。
findElement は、存在しない要素を探すために使用すべきではありません。代わりに findElements(By) を使用し、長さゼロの応答を表明してください。
関連
-
[解決済み] なぜJPAには@Transientアノテーションがあるのですか?
-
[解決済み] java.lang.ClassNotFoundException: クラス com.ibm.db2.jcc.DB2Driver が Worklight プラットフォームまたはプロジェクトに見つかりませんでした。
-
[解決済み] eclipseからTomcatに物理的に発行されるmyjspはどこにあるのでしょうか?
-
[解決済み] Mavenです。JARは空になります - 含有するためにマークされたコンテンツがありません
-
[解決済み] 文字列の巻き方
-
[解決済み] プライベートメソッド、フィールド、インナークラスを持つクラスをテストするにはどうすればよいですか?
-
[解決済み] Mavenを使用して、依存関係を持つ実行可能なJARを作成するにはどうすればよいですか?
-
[解決済み] Javaにおける例外処理によるパフォーマンスへの影響とは?
-
[解決済み] Selenium WebDriverでスクリーンショットを撮るにはどうしたらいいですか?
-
[解決済み】Selenium WebDriverでPythonを使用してWebElementのHTMLソースを取得する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] java.sql.SQLException: ORA-00933: SQL コマンドが正しく終了していません。
-
[解決済み] maven. -source 1.5ではラムダ式がサポートされていません。
-
[解決済み] java.lang.ClassCastException: java.util.Arrays$ArrayList は java.util.ArrayList にキャストできません。
-
[解決済み] Androidのコールバックとは何ですか?重複
-
[解決済み] javax.mail.MessagingException: SMTPホストに接続できませんでしたか?
-
[解決済み] javaでAnnotation Inheritanceのようなものはあるのでしょうか?
-
[解決済み] java.sql.SQLRecoverableException: IO エラーです。NL Exceptionが発生しました
-
[解決済み] Javaにおける例外処理によるパフォーマンスへの影響とは?
-
[解決済み】Selenium C# WebDriver: 要素が存在するまで待つ
-
[解決済み] WebDriver: 要素が存在するかどうかをチェックする?[重複している]。