selenium find element text tutorial with examples
O privire aprofundată asupra elementului de seleniu pentru căutare după text cu exemplu:
cum se folosește float în java
Ce veți învăța:
Element de găsire a seleniului care conține text specific
Selenium Find element by text este folosit pentru a localiza un element web folosind valoarea sa text. Valoarea textului este în general utilizată atunci când proprietățile de identificare a elementelor de bază, cum ar fi ID sau clasă, au eșuat.
Uneori, dezvoltatorii tind să grupeze elemente web similare cu același ID sau aceeași clasă. Într-un astfel de caz, găsirea elementului web folosind text vine în ajutorul testelor de automatizare.
Valoarea textului poate fi complet potrivită sau parțial potrivită pentru a localiza elementul. Până la sfârșitul acestui tutorial, veți dobândi cunoștințe clare despre elementul de găsire a seleniului.
Mai jos este unExemplua utilizării metodei textului pentru a găsi un anumit element web.
- Deschideți site-ul Web - SoftwareTestingHelp.com
- Găsiți hyperlinkul - Testare manuală folosind proprietatea text.
Sarcina de mai sus poate fi realizată folosind metoda de text încorporată așa cum se menționează mai jos:
WebElement textDemo = driver.findElement (By.xpath („// *”));
Text () Metoda seleniului
- Metoda Text () este o metodă încorporată a driverului web de seleniu care poate fi utilizată pentru a localiza un element pe baza textului elementului web.
- Mai jos este un exemplu care demonstrează utilizarea metodei textului în seleniu.
Scenariu de testare
- Deschideți browserul Firefox cu adresa URL: SoftwareTestingHelp.com
- Folosind metoda text a driverului web seleniu, găsiți elementul web cu text - Scrieți și câștigați.
- Validați dacă elementul selectat este afișat pe pagina web.
- Dacă este afișat, tipăriți textul ca Element găsit folosind text.
- Dacă elementul nu este afișat, tipăriți textul ca Element nu a fost găsit.
Cod sursa:
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(); } }
Ieșire consolă:
Explicatie cod:
- Inițial, creăm o instanță a browserului Firefox folosind șofer de gecko .
- Folosind metoda driver.get (), navigăm la adresa URL: SoftwareTestingHelp
- Apoi, încercăm să găsim elementul cu textul - Scrie și câștigă (hyperlink).
- Dacă este afișat elementul web, adăugăm o declarație de tipărire care spune elementul găsit folosind textul specificat.
- Dacă nu, imprimăm un mesaj care nu a fost găsit.
- În cele din urmă, închidem sesiunea browserului folosind metoda driver.quit ().
Citire sugerată => Tutoriale gratuite pentru pregătirea în profunzime a seleniului
cum să treceți o matrice la o metodă în java
Conține metodă de seleniu
- Metoda Conține este utilizată pentru a găsi elemente web cu potrivire parțială a textului.
- De exemplu, dacă dorim să găsim lista elementelor web care conțin cuvântul „Seleniu”, atunci o putem face folosind metoda încorporată conține așa cum se menționează mai jos.
List elementsList = driver.findElements(By.xpath(“//*(contains(text(),'Selenium'))'));
Exemplu:
Scenariu de testare
- Deschideți browserul Firefox cu adresa URL: SoftwareTestingHelp.com
- Folosind metoda conține, găsiți lista elementelor web care conțin textul - Scrieți și câștigați.
- Imprimați numărul numărului de elemente găsite în listă.
Cod sursa:
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(); } }
Ieșire consolă:
Explicatie cod:
- În primul pas, inițializăm instanța driverului gecko pentru a indica un fișier geckodriver.exe.
- Apoi, navigăm la adresa URL https://www.softwaretestinghelp.com/
- Folosind metoda conține, încercăm să găsim elementele web cu textul „Scrie și câștigă”.
- Folosind metoda dimensiunii, numărăm numărul de elemente cu textul specificat și îl imprimăm pe consolă.
- În cele din urmă, închidem sesiunea browserului web folosind metoda driver.quit ().
Diferența dintre metodele de text, text de legătură și text de legătură parțială
- Textul, textul legăturilor și metodele textului legăturii parțiale sunt toate metodele încorporate furnizate de driverul web Selenium.
- Metoda text este utilizată pentru a identifica un element web în mod unic folosind textul proprietății.
- Textul legăturii este utilizat pentru a identifica un element web în mod unic utilizând textul legăturii de proprietate, cu o potrivire exactă.
- Textul linkului parțial este utilizat pentru a identifica un element web folosind în mod unic textul linkului de proprietate, nu neapărat potrivirea exactă.
- Textul legăturii și textul legăturii parțiale sunt ambele sensibile la majuscule, ceea ce înseamnă că diferența dintre literele mari și mici este importantă.
Exemplu:
Scenariu de testare:
- Deschideți site-ul Web SoftwareTestingHelp.com utilizând browserul web Firefox.
- Găsiți elementul web - Scrieți și câștigați un link folosind metoda textului linkului.
- Găsiți elementul web - Scrieți și câștigați link folosind metoda textului linkului parțial.
- Găsiți elementul web - Scrieți și câștigați link-ul folosind metoda textului.
Mai jos este codul sursă pentru scenariul de test de mai sus.
Cod sursa:
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(); } }
Ieșire cod:
Explicatie cod:
- În primul pas, setăm proprietatea sistemului, adică webdriver.gecko.driver, pentru a indica locația locală a fișierului geckodriver.exe.
- Apoi inițializăm o instanță a driverului Firefox și navigăm la adresa URL - https://www.SoftwareTestingHelp.com
- Încercăm inițial să identificăm elementul web - Scrieți și câștigați folosind textul link-ului și imprimând starea de identificare a elementului pe consola eclipsei.
- Încercăm inițial să identificăm elementul web - Scrieți și câștigați folosind textul de legătură parțială și imprimând starea de identificare a elementului pe consola eclipsei.
- Încercăm inițial să identificăm elementul web - Scrieți și câștigați folosind metoda textului și tipărind starea de identificare a elementului pe consola eclipsei.
Concluzie
- Găsire element după text este utilizat pentru a localiza un element web folosind valoarea sa de text. Metodă predefinită text() este folosit pentru a realiza același lucru.
- Metoda Conține este utilizată pentru a găsi elemente web cu potrivire parțială a textului.
- Metoda text este utilizată pentru a identifica un element web în mod unic folosind textul proprietății.
- Textul legăturii este utilizat pentru a identifica un element web în mod unic utilizând textul legăturii de proprietate, cu o potrivire exactă.
- Textul linkului parțial este utilizat pentru a identifica un element web folosind în mod unic textul linkului de proprietate, nu neapărat potrivirea exactă.
Lectură recomandată
- 30+ Cele mai bune tutoriale despre seleniu: învățați seleniul cu exemple reale
- Tutoriale detaliate pentru eclipsă pentru începători
- Tutorial Castravete Seleniu: Integrare Castravete Java Seleniu WebDriver
- Tutorial GeckoDriver Selenium: Cum se folosește GeckoDriver în proiecte Selenium
- Tutorial Python DateTime cu exemple
- Introducere în Selenium WebDriver - Tutorial Selenium # 8
- Scenarii eficiente cu scripturi și depanare Selenium - Tutorial Selenium # 27
- Aflați cum să utilizați adnotările TestNG în seleniu (cu exemple)