check visibility web elements using various types webdriver commands selenium tutorial 14
Com es pot comprovar la visibilitat d'elements web mitjançant diversos tipus d'ordres de bucle i condicionals a WebDriver:
Anteriorment a la sèrie, en vam parlar Classe Select de WebDriver que s'utilitza principalment per gestionar elements web com els desplegables i seleccionar diverses opcions als desplegables.
Avançar al Sèrie de seleni , estaríem discutint sobre els diversos tipus d'ordres de bucle i condicionals a WebDriver com isSelected (), isEnabled () i isDispalyed (). Aquests mètodes s’utilitzen per determinar l’abast de visibilitat dels elements web.
Comencem, doncs, amb una breu introducció: WebDriver té una especificació W3C que detalla la informació sobre les diferents preferències de visibilitat en funció dels tipus d’elements web sobre els quals s’han de realitzar les accions.
WebDriver facilita a l'usuari els següents mètodes per comprovar la visibilitat dels elements web. Aquests elements web poden ser botons, caixes de selecció, caselles de selecció, botons d’opció, etiquetes, etc.
- isDisplayed ()
- isSelected ()
- isEnabled ()
Per obtenir una millor comprensió, parlem dels mètodes esmentats amb exemples de codi.
Com a mostra, faríem servir “google.com” com a aplicació en prova i el projecte “Learning_Selenium” creat als tutorials anteriors per a la generació de seqüències.
Escenari a automatitzar
- Inicieu el navegador web i obriu l'aplicació que es prova: http://google.com
- Verifiqueu el títol de la pàgina web
- Verifiqueu si apareix el botó 'Cerca de Google'
- Introduïu la paraula clau al quadre de text 'Cerca de Google' amb el qual voldríem fer la sol·licitud
- Verifiqueu que es mostri i estigui activat el 'botó Cerca'
- En funció de la visibilitat del botó Cerca, feu clic al botó Cerca
Què aprendreu:
Codi WebDriver
Pas 1: Creeu una nova classe Java anomenada 'VisibilityConditions' dins del projecte 'Learning_Selenium'.
com instal·lar appium a Windows
Pas 2: Copieu i enganxeu el codi següent a la classe 'VisibilityConditions.java'.
A continuació es mostra l'script de prova que equival a l'escenari esmentat anteriorment:
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class VisibilityConditions { /** * @param args */ public static void main(String() args) { // objects and variables instantiation WebDriver driver = new FirefoxDriver(); String appUrl = 'https://google.com'; // launch the firefox browser and open the application url driver.get(appUrl); // maximize the browser window driver.manage().window().maximize(); // declare and initialize the variable to store the expected title of the webpage. String expectedTitle = 'Google'; // fetch the title of the web page and save it into a string variable String actualTitle = driver.getTitle(); // compare the expected title of the page with the actual title of the page and print the result if (expectedTitle.equals(actualTitle)) { System.out.println('Verification Successful - The correct title is displayed on the web page.'); } else { System.out.println('Verification Failed - An incorrect title is displayed on the web page.'); } // verify if the “Google Search” button is displayed and print the result boolean submitbuttonPresence=driver.findElement(By.id('gbqfba')).isDisplayed(); System.out.println(submitbuttonPresence); // enter the keyword in the “Google Search” text box by which we would want to make the request WebElement searchTextBox = driver.findElement(By.id('gbqfq')); searchTextBox.clear(); searchTextBox.sendKeys('Selenium'); // verify that the “Search button” is displayed and enabled boolean searchIconPresence = driver.findElement(By.id('gbqfb')).isDisplayed(); boolean searchIconEnabled = driver.findElement(By.id('gbqfb')).isEnabled(); if (searchIconPresence==true && searchIconEnabled==true) { // click on the search button WebElement searchIcon = driver.findElement(By.id('gbqfb')); searchIcon.click(); } // close the web browser driver.close(); System.out.println('Test script executed successfully.'); // terminate the program System.exit(0); } }
Resolució de codi
A continuació s’expliquen les maneres de comprovar la presència d’elements web a la pàgina web.
booleà submitbuttonPresence = driver.findElement (By.id ( 'Creu' )). isDisplayed ();
isDispalyed ()
isDisplayed () és el mètode utilitzat per verificar la presència d'un element web a la pàgina web. El mètode està dissenyat per resultar d'un valor booleà amb cada èxit i fracàs. El mètode retorna un valor 'vertader' si l'element web especificat és present a la pàgina web i un valor 'fals' si l'element web no està present a la pàgina web.
Per tant, el fragment de codi anterior verifica la presència del botó d'enviament a la pàgina web de Google i retorna un valor vertader si el botó d'enviament és present i visible, en cas contrari, torna un valor fals si el botó d'enviament no està present a la pàgina web.
booleà searchIconEnabled = driver.findElement (By.id ( 'Gbqfb' )). isEnabled ();
El mètode tracta de la visibilitat de tot tipus d’elements web, no només limitant-se a cap tipus.
isEnabled ()
isEnabled () és el mètode utilitzat per verificar si l'element web està habilitat o desactivat a la pàgina web. Igual que el mètode isDisplayed (), està dissenyat per donar lloc a un valor booleà amb cada èxit i fracàs. El mètode retorna un valor 'vertader' si l'element web especificat està habilitat a la pàgina web i un valor 'fals' si l'element web no està habilitat (estat de desactivació) a la pàgina web.
Així, el fragment de codi anterior verifica si el botó d'enviament està habilitat o no i retorna un valor booleà en funció del resultat.
El mètode isEnabled () és significatiu en casos on volem comprovar que només si es compleix la 'Condició A', llavors l'element (principalment el botó) està habilitat. Consulteu la il·lustració següent per obtenir el mateix.
A la figura anterior, el botó Registra només s’activa quan està seleccionada la casella de selecció Acord.
Igual que els mètodes anteriors, tenim un mètode referit com a 'isSelected ()' que prova si l'element web especificat està seleccionat o no.
booleà searchIconSelected = driver.findElement (By.id ( 'Home' )). isSelected ();
el millor convertidor de vídeo per a mac
isSelected ()
isSelected () és el mètode utilitzat per verificar si l'element web està seleccionat o no. El mètode isSelected () s'utilitza de forma predominant amb botons d'opció, desplegables i caselles de selecció. Anàlogament als mètodes anteriors, està dissenyat per obtenir un valor booleà amb cada èxit i fracàs.
Per tant, el fragment de codi anterior verifica si el botó d'opció masculí està seleccionat o no i retorna un valor booleà en funció del resultat. Consulteu la imatge següent per obtenir el mateix.
Conclusió
En aquest tutorial, hem intentat fer-vos conèixer les operacions condicionals i de bucle de WebDriver. Aquests mètodes condicionals solen tractar gairebé tots els tipus d’opcions de visibilitat d’elements web.
Resum de l'article:
- WebDriver té una especificació W3C que detalla la informació sobre les diferents preferències de visibilitat en funció dels tipus d’elements web.
- isDisplayed () és el mètode utilitzat per verificar la presència d'un element web a la pàgina web. El mètode retorna un valor 'vertader' si l'element web especificat és present a la pàgina web i un valor 'fals' si l'element web no està present a la pàgina web.
- isDisplayed () és capaç de comprovar la presència de tot tipus d’elements web disponibles.
- isEnabled () és el mètode utilitzat per verificar si l'element web està habilitat o desactivat a la pàgina web.
- isEnabled () s'utilitza principalment amb botons.
- isSelected () és el mètode utilitzat per verificar si l'element web està seleccionat o no. El mètode isSelected () s'utilitza principalment amb botons d'opció, desplegables i caselles de selecció.
Pròxim tutorial núm. 15 : Mentre treballem en aplicacions web, sovint ens redirigeixen a diferents pàgines web actualitzant tota la pàgina web i tornant a carregar els nous elements web. De vegades també hi pot haver trucades Ajax. Per tant, es pot veure un retard de temps mentre es carreguen les pàgines web i es reflecteixen els elements web. Per tant, el nostre següent tutorial en línia tracta de tractar aquests desfasaments mitjançant esperes implícites i explícites.
Nota per als lectors : Fins llavors, el lector pot automatitzar i provar l'abast de visibilitat dels elements web mitjançant els mètodes de WebDriver.
Lectura recomanada
- Introducció a Selenium WebDriver - Tutorial Selenium # 8
- Implementació del nostre primer script WebDriver - Selenium WebDriver Tutorial # 10
- Com es poden localitzar elements als navegadors Chrome i IE per crear scripts Selenium - Tutorial Selenium # 7
- Tutorial de Cogombre Selenium: Integració de Cogombre Java Selenium WebDriver
- Configuració i instal·lació senceres de WebDriver amb Eclipse - Tutorial Selenium # 9
- Com s'utilitza el selector CSS per identificar elements web per als scripts Selenium - Tutorial Selenium núm. 6
- Escenaris de scripts i resolució de problemes de Selenium eficients: tutorial núm. 27 de Selenium
- Depuració d’escriptures de Selenium amb registres (Tutorial Log4j) - Tutorial Selenium núm. 26