selenium find element text tutorial with examples
例を使用したテキストによるSeleniumFindElementの詳細な調査:
品質管理面接の質問と回答pdf
学習内容:
特定のテキストを含むSeleniumの検索要素
Seleniumテキストによる要素の検索は、テキスト値を使用してWeb要素を検索するために使用されます。テキスト値は通常、IDやクラスなどの基本的な要素識別プロパティが失敗した場合に使用されます。
開発者は、同じIDまたは同じクラスの類似したWeb要素をグループ化する傾向があります。このような場合、テキストを使用してWeb要素を見つけると、自動化テストが役立ちます。
テキスト値は、要素を見つけるために完全に一致または部分的に一致させることができます。このチュートリアルを終了すると、Seleniumのfind要素に関する明確な知識が得られます。
以下は例特定のWeb要素を見つけるためのtextメソッドの使用について。
- ウェブサイトを開く– SoftwareTestingHelp.com
- ハイパーリンクを見つける–textプロパティを使用した手動テスト。
上記のタスクは、以下に説明する組み込みのテキストメソッドを使用して実行できます。
WebElement textDemo = driver.findElement(By.xpath(“ // *”));
セレンのText()メソッド
- Text()メソッドは、Web要素のテキストに基づいて要素を見つけるために使用できるSeleniumWebドライバーの組み込みメソッドです。
- 以下は、Seleniumでのテキストメソッドの使用法を示す例です。
テストシナリオ
- 次のURLでFirefoxブラウザを開きます:SoftwareTestingHelp.com
- セレンWebドライバーのテキストメソッドを使用して、テキストを含むWeb要素を見つけます–書き込みと獲得。
- 選択した要素がWebページに表示されているかどうかを検証します。
- 表示されている場合は、テキストを使用して見つかった要素としてテキストを印刷します。
- 要素が表示されない場合は、「要素が見つかりません」としてテキストを印刷します。
ソースコード:
package Demo; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class FindElementDemo { public static void main(String() args) throws InterruptedException { // TODO Auto-generated method stub System.setProperty('webdriver.gecko.driver', 'D:\Data_Personal\Demo\geckodriver-v0.23.0-win64\geckodriver.exe'); WebDriver driver = new FirefoxDriver(); driver.get('https://www.softwaretestinghelp.com/'); WebElement textDemo = driver.findElement(By.xpath('//*(text()='Write and Earn')')); if(textDemo.isDisplayed()) { System.out.println('Element found using text'); } else System.out.println('Element not found'); driver.quit(); } }
コンソール出力:
コードの説明:
- 最初に、Firefoxブラウザのインスタンスを使用して作成しています geckoドライバー 。
- driver.get()メソッドを使用して、次のURLに移動します。 SoftwareTestingHelp
- 次に、「書き込みと獲得(ハイパーリンク)」というテキストを含む要素を見つけようとしています。
- web要素が表示されている場合は、指定されたテキストを使用して要素が見つかったことを示すprintステートメントを追加しています。
- そうでない場合は、要素が見つかりませんというメッセージを出力しています。
- 最後に、driver.quit()メソッドを使用してブラウザセッションを閉じます。
推奨読書=> 詳細な無料のSeleniumトレーニングチュートリアル
セレンの方法が含まれています
- 部分的にテキストが一致するWeb要素を検索するためにContainsメソッドが使用されます。
- 例えば、 「Selenium」という単語を含むWeb要素のリストを検索する場合は、以下で説明する組み込みのcontainsメソッドを使用して検索できます。
List elementsList = driver.findElements(By.xpath(“//*(contains(text(),'Selenium'))'));
例:
テストシナリオ
- 次のURLでFirefoxブラウザを開きます:SoftwareTestingHelp.com
- containsメソッドを使用して、テキストを含むWeb要素のリストを見つけます–書き込みと獲得。
- リストで見つかった要素の数のカウントを出力します。
ソースコード:
package Demo; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class FindElementDemo { public static void main(String() args) throws InterruptedException { // TODO Auto-generated method stub System.setProperty('webdriver.gecko.driver', 'D:\Data_Personal\Demo \geckodriver-v0.23.0-win64\geckodriver.exe'); WebDriver driver = new FirefoxDriver(); driver.get('https://www.softwaretestinghelp.com/'); ListtextDemo= driver.findElements(By.xpath('//*(contains(text(),'Write and Earn'))')); System.out.println('Number of web elements: ' +textDemo.size()); driver.quit(); } }
コンソール出力:
コードの説明:
- 最初のステップでは、geckodriver.exeファイルを指すようにgeckoドライバーインスタンスを初期化します。
- 次に、URLhttps://www.softwaretestinghelp.com/に移動します。
- containsメソッドを使用して、「WriteandEarn」というテキストを持つWeb要素を見つけようとしています。
- sizeメソッドを使用して、指定されたテキストを持つ要素の数をカウントし、コンソールに出力します。
- 最後に、driver.quit()メソッドを使用してWebブラウザーセッションを閉じます。
テキスト、リンクテキスト、および部分リンクテキストメソッドの違い
- テキスト、リンクテキスト、および部分リンクテキストメソッドはすべて、SeleniumWebドライバーによって提供される組み込みメソッドです。
- Textメソッドは、プロパティtextを使用してWeb要素を一意に識別するために使用されます。
- リンクテキストは、プロパティリンクテキストを使用して完全に一致するWeb要素を一意に識別するために使用されます。
- 部分的なリンクテキストは、プロパティリンクテキストを使用してWeb要素を一意に識別するために使用されますが、必ずしも完全に一致するとは限りません。
- リンクテキストと部分リンクテキストはどちらも大文字と小文字が区別されます。つまり、大文字と小文字の違いが重要になります。
例:
テストシナリオ:
html5とcss3のインタビューの質問
- FirefoxWebブラウザを使用してWebサイトSoftwareTestingHelp.comを開きます。
- Web要素を見つける–リンクテキストメソッドを使用してリンクを記述して獲得します。
- Web要素を見つける–部分リンクテキストメソッドを使用してリンクを書き込み、獲得します。
- Web要素を見つける–textメソッドを使用してリンクを記述して獲得します。
以下は、上記のテストシナリオのソースコードです。
ソースコード:
package Demo; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public final class LinkTextDemo { public static void main(String() args) throws InterruptedException { // TODO Auto-generated method stub System.setProperty('webdriver.gecko.driver', 'D:\Data_Personal\Demo\geckodriver-v0.23.0-win64\geckodriver.exe'); WebDriver driver = new FirefoxDriver(); driver.get('https://www.softwaretestinghelp.com/'); WebElement linkText = driver.findElement(By.linkText('Write and Earn')); if(linkText.isDisplayed()) { System.out.println('Element using link text is found'); } WebElement partialLinkText = driver.findElement(By.partialLinkText('Write')); if(partialLinkText.isDisplayed()) { System.out.println('Element using partial link text is found'); } List textDemo = driver.findElements(By.xpath('//*(contains(text(),'Write and Earn'))')); if(textDemo.isEmpty()) { System.out.println('Element using text is not found'); } else System.out.println('Element using text is found'); driver.quit(); } }
コード出力:
コードの説明:
- 最初のステップでは、geckodriver.exeファイルのローカルの場所を指すようにシステムプロパティ(webdriver.gecko.driver)を設定します。
- 次に、Firefoxドライバーのインスタンスを初期化し、次のURLに移動します– https://www.SoftwareTestingHelp.com
- 最初にWeb要素を識別しようとしています–リンクテキストを使用して書き込みと獲得を行い、要素識別ステータスをEclipseコンソールに出力します。
- 最初にWeb要素を識別しようとしています–部分的なリンクテキストを使用して書き込みと獲得を行い、要素の識別ステータスをEclipseコンソールに出力します。
- 最初にWeb要素を識別しようとしています– textメソッドを使用して書き込みと獲得を行い、要素の識別ステータスをEclipseコンソールに出力します。
結論
- テキストによる要素の検索は、テキスト値を使用してWeb要素を検索するために使用されます。事前定義されたメソッド テキスト() 同じことを達成するために使用されます。
- 部分的にテキストが一致するWeb要素を検索するためにContainsメソッドが使用されます。
- Textメソッドは、プロパティtextを使用してWeb要素を一意に識別するために使用されます。
- リンクテキストは、プロパティリンクテキストを使用して完全に一致するWeb要素を一意に識別するために使用されます。
- 部分的なリンクテキストは、プロパティリンクテキストを使用してWeb要素を一意に識別するために使用されますが、必ずしも完全に一致するとは限りません。
推奨読書
- 30以上の最高のSeleniumチュートリアル:実際の例でSeleniumを学ぶ
- 初心者向けの詳細なEclipseチュートリアル
- Cucumber Seleniumチュートリアル:Cucumber Java SeleniumWebDriverの統合
- GeckoDriver Seleniumチュートリアル:SeleniumプロジェクトでGeckoDriverを使用する方法
- 例を含むPythonDateTimeチュートリアル
- Selenium WebDriverの概要– Seleniumチュートリアル#8
- 効率的なSeleniumスクリプティングとトラブルシューティングシナリオ– Seleniumチュートリアル#27
- SeleniumでTestNGアノテーションを使用する方法を学ぶ(例を含む)