SeleniumWebDriverのドロップダウンから値を選択する方法



この記事は、Selenium WebDriverのSelectクラスとは何か、およびSeleniumWebDriverのドロップダウンリストから値を選択する方法を理解するのに役立ちます。

アクションを実行するには、最初の行うタスクは、要素グループを識別することです。一般的に、 、ドロップダウンリストからいくつかの値を選択し、他のアクティビティを実行してそれらを検証する必要がある場合があります。そこで、SeleniumWebDriverのSelectクラスとは何かを理解する方法とその方法を説明します。 選択する SeleniumWebDriverのドロップダウンリストからの値。

このトピックについて、次の順序で説明します。





それでは、始めましょう。

SeleniumWebDriverでクラスを選択します

ザ・ 選択する クラスは 基本的にHTMLSELECTタグの実装を提供するクラス。 Selectタグは、ヘルパーメソッドに選択オプションと選択解除オプションを提供します。このクラスは下にあります SeleniumのSupport.UI.Select パッケージ。 Selectは実際には通常のクラスであるため、そのオブジェクトもキーワードによって作成されます。 新着 また、Web要素の場所も指定します。



構文:

oSelect = new Select()を選択します

コマンドに引数を追加するように求めるエラーがスローされます。したがって、を使用してWeb要素の場所を指定します

それは明確に述べています 選択する コンストラクターの要素型オブジェクトを要求しています。



この後、のオブジェクトを取得したら SELECTクラス 、に存在するすべてのメソッドにアクセスできます 選択する 入力してクラス o選択+ドット これにより、Selectクラスのすべてのメソッドが提供されます。テストケースに応じて任意の方法を選択してください。

それでは、このSelectクラスのさまざまなメソッドについて学びましょう。

SeleniumWebDriverでクラスを選択します。 さまざまな選択コマンド

以下は、ドロップダウンリストを処理するために最も一般的に使用される方法です。

1。 selectByVisibleText: selectByVisibleText(String arg0):void

この方法では、ドロップダウンや複数の選択ボックスの下にあるオプションを選択または選択するのは非常に簡単です。の1つであるStringのパラメータを取ります 選択要素の そしてそれは何も返しません。

構文: oSelect.selectByVisibleText( 'text')

cで再帰を使用する階乗

例:

Select oSelect = new Select(driver.findElement(By.id( 'search-box')))oSelect.selectByVisibleText( 'Blog')

2 。 selectByIndex: selectByIndex(int arg0):void

このメソッドは「selectByVisibleText」とほぼ同じですが、ここでの唯一の違いは、ユーザーがオプションテキストではなくオプションのインデックス番号を指定する必要があることです。のインデックス値である整数パラメータを取ります 要素を選択 そしてそれは何も返しません。

Synatx: oSelect.selectByIndex(int)

例:

Select oSelect = new Select(driver.findElement(By.id( 'Seacrch-box')))oSelect.selectByIndex(2)

3.3。 selectByValue: selectByValue(String arg0):void

この方法も、前に説明した方法と似ていますが、この方法の唯一の違いは、オプションのテキストやインデックスではなく、オプションの値を要求することです。の値の1つであるStringパラメータを取ります 要素を選択 そしてそれは何も返しません。

構文: oSelect.selectByValue( 'text')

例:

Select oSelect = new Select(driver.findElement(By.id( 'Search-box')))oSelect.selectByValue( 'Selenium認定トレーニング')

四。 getOptions: getOptions():リスト

このメソッドは、Selectタグに属するすべてのオプションを取得するのに役立ちます。パラメータを受け取らず、戻ります リスト

構文: oSelect.getOptions()

例:

Select oSelect = new Select(driver.findElement(By.id( 'Search-box')))List elementCount = oSelect.getOptions()System.out.println(elementCount.size())

それでは、次のトピックに進み、複数選択の方法について学びましょう。

Pythonでは10進数から2進数へ

SeleniumWebDriverでクラスを選択します。 複数のSELECTコマンドはどのように機能しますか?

複数選択属性はブール式です。これが存在する場合、複数のオプションを一度に選択できることを指定します。これらのオプションは、オペレーティングシステムやブラウザによって異なります。

  • Windowsの場合: コントロール(ctrl)ボタンを押したままにして、複数のオプションを選択します。
  • Mac用: コマンドボタンを押したままにして、複数のオプションを選択します。

複数の選択肢があることをユーザーに通知する必要があるため、さまざまな操作方法を使用する代わりに、チェックボックスを使用する方が使いやすいです。複数の選択オプションを使用できることを実際に指定するのに役立つ方法があります。

isMultiple

isMultiple():ブール値 - このメソッドは、SELECT要素が複数の選択オプションを同時にサポートするかどうかを示します。このメソッドは何も受け入れず、ブール値(true / false)を返します。

構文: oSelect.isMultiple()

例:

Select oSelect = new Select(driver.findElement(By.id(Element_ID)))oSelect.selectByIndex(index)oSelect.selectByIndex(index)//またはoSelect.selectByVisibleText(text)oSelect.selectByVisibleText(text)/として使用できます/またはoSelect.selectByValue(value)として使用できますoSelect.selectByValue(value)

Selenium WebDriverでクラスを選択:DeSelectメソッド

Webページで特定の要素を選択する場合、その要素の選択を解除するのに役立ついくつかの方法があります。しかし、これらの方法の唯一の課題は、それらが機能しないことです 落ちる そしてのために働くだけ 複数選択 要素。

事前に選択されたオプションの選択を解除したい場合は、どちらかで行うことができます

  • すべての選択を解除 ()
  • deselectByIndex
  • deselectByValue
  • deselectByVisibletext

方法を詳しく理解しましょう。

  • すべての選択を解除 (): 選択したすべてのエントリをクリアします。これは、ドロップダウン要素が複数の選択をサポートしている場合にのみ有効です。

例: o選択します。 すべての選択を解除 ()

  • deselectByIndex(): それ指定されたインデックスでオプションの選択を解除します。

例: o選択します。 deselectByIndex(2)

  • deselectByValue(): この方法は、「 」属性は特定のパラメーターと一致します。

例: o選択します。 deselectByValue(“ 13”)

  • deselectByVisibletext(): このメソッドは、パラメーターに一致するテキストを表示するオプションの選択を解除するのに役立ちます。

Selenium WebDriverでクラスを選択する:ドロップダウンメニューからオプションを選択するにはどうすればよいですか?

私はあなたたちがこれがどのように理解するのを手伝います 選択する メソッドは、リアルタイムの例で機能します。

この場合、私は有名なeコマースWebサイトでの作業を検討します facebook.com。

  • まず、Javaライブラリをシステムに追加します。
  • コードを記述できるIDE。 Eclipse IDEはユーザーフレンドリーなので、作業を検討します。
  • Seleniumライブラリをプロジェクトに追加します。
  • WebページのURLを取得します。
  • ドロップダウンリストで必要なアクションを実行します。

これについては、2つの異なるプログラムを使用して説明しました。最初のプログラムはドロップダウンリストから値を選択するのに役立ち、2番目のプログラムはドロップダウンリストでさまざまな操作を実行するのに役立ちます。

  • まず、 。
  • のURLを取得します フェイスブック
  • 作成する オブジェクトを作成し、要素ロケーターを使用して要素を見つけます。
  • Selectメソッドを使用してWebElementのオブジェクトを選択します。
  • ドライバの実行を終了します。

このコードを参照してください:

パッケージEdurekaaimport org.junit.Test import org.openqa.selenium.By import org.openqa.selenium.JavascriptExecutor import org.openqa.selenium.WebDriver import org.openqa.selenium.WebElement import org.openqa.selenium.chrome.ChromeDriver import org.openqa.selenium.support.ui.Select public class SelectClass {@Test public static void main(String [] args)throws InterruptedException {System.setProperty( 'webdriver.chrome.driver'、 'C​​:UsersVaishnaviDesktopchromedriver_win32(2) chromedriver.exe ')WebDriver driver = new ChromeDriver()driver.get(' http://www.facebook.com ')driver.manage()。window()。maximize()//js.executeScript(' window。 scrollBy(0,300) ')WebElement month_dropdown = driver.findElement(By.id(' day '))Select oSelect = new Select(month_dropdown)oSelect.selectByIndex(3)Thread.sleep(3000)WebElement year_yy = driver.findElement(By .id( 'year'))Select year_y = new Select(year_yy)year_y.selectByValue( '2000')Thread.sleep(3000)WebElement month_m = driver.findElement(By.id( 'month'))Sele ct month_d1 = new Select(month_m)month_d1.selectByVisibleText( 'Jul')driver.quit()}}

2番目のプログラムは、ドロップダウンリストでのアクションの実行を扱います。この場合、月数と名前を印刷してみましょう。

  • WebElementsのリストを作成し、オプションを選択します。
  • 月のドロップダウンのサイズを取得します。
  • 月リストのサイズを印刷します。
  • WebElementの別のオブジェクトを作成します それ 月の名前を取得します。
  • forループを使用して数値を出力します。
  • ドライバの実行を終了します。
パッケージEdurekaaimport java.util.List import org.junit.Test import org.openqa.selenium.By import org.openqa.selenium.JavascriptExecutor import org.openqa.selenium.WebDriver import org.openqa.selenium.WebElement import org.openqa .selenium.chrome.ChromeDriver import org.openqa.selenium.support.ui.Select public class SelectClass2 {@Test public static void main(String [] args)throws InterruptedException {System.setProperty( 'webdriver.chrome.driver'、 ' C:UsersVaishnaviDesktopchromedriver_win32(2)chromedriver.exe ')WebDriver driver = new ChromeDriver()JavascriptExecutor js =(JavascriptExecutor)driver driver.get(' http://www.facebook.com ')driver.manage()。window() .maximize()// js.executeScript( 'window.scrollBy(0,300)')WebElement month_dropdown = driver.findElement(By.id( 'month'))Select oSelect = new Select(month_dropdown)List&ampampltWebElement&ampampgt month_list = oSelect.getOptions( )int total_month = month_list.size()System.out.println( '合計数は' + total_month)for(WebElement ele:month_list){String month_name = ele.getText()System.out.println( 'Months are' + month_name)} driver.quit()}}

これで、この「SeleniumWebDriverのドロップダウンから選択する方法」ブログは終了です。この記事を楽しんで、SelectクラスがSeleniumでどのように機能するかを理解していただければ幸いです。

Seleniumを使用してドロップダウンリストから値を選択する方法を理解したので、 650,000人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。このコースは、Seleniumの完全な機能とソフトウェアのテストにおけるその重要性を紹介することを目的としています。

スキャナークラスの使い方

質問がありますか? 「SeleniumWebDriverのドロップダウンから選択する方法」のコメントセクションにその旨を記載してください。折り返しご連絡いたします。