En aquest tema, explorarem els conceptes bàsics dels localitzadors en Selenium, que són fonamentals per interactuar amb els elements d'una pàgina web. Els localitzadors són utilitzats per identificar i trobar elements web dins del DOM (Document Object Model) per tal de poder realitzar accions sobre ells, com ara fer clic, escriure text, etc.
Conceptes Clau
-
Què és un Localitzador?
- Un localitzador és una expressió o mètode que permet identificar un element web dins d'una pàgina.
- Els localitzadors són essencials per a l'automatització de proves, ja que permeten a Selenium interactuar amb els elements de la pàgina.
-
Tipus de Localitzadors en Selenium
- Selenium proporciona diversos tipus de localitzadors per identificar elements web:
- ID: Localitza un element pel seu atribut
id
. - Nom: Localitza un element pel seu atribut
name
. - Class Name: Localitza elements pel seu atribut
class
. - Tag Name: Localitza elements pel seu nom de tag HTML.
- Link Text: Localitza enllaços pel text visible.
- Partial Link Text: Localitza enllaços per una part del text visible.
- XPath: Utilitza expressions XPath per localitzar elements.
- CSS Selectors: Utilitza selectores CSS per identificar elements.
- ID: Localitza un element pel seu atribut
- Selenium proporciona diversos tipus de localitzadors per identificar elements web:
Exemples Pràctics
Exemple 1: Localitzador per ID
- Explicació: Aquest codi localitza un element amb l'atribut
id
igual a "username" i escriu "usuari_exemple" en aquest camp.
Exemple 2: Localitzador per Nom
WebElement element = driver.findElement(By.name("password")); element.sendKeys("contrasenya_secreta");
- Explicació: Aquí, l'element es localitza pel seu atribut
name
igual a "password" i s'introdueix "contrasenya_secreta".
Exemple 3: Localitzador per XPath
- Explicació: Aquest exemple utilitza una expressió XPath per localitzar un botó d'enviament i fer-hi clic.
Exemple 4: Localitzador per CSS Selector
- Explicació: Utilitza un selector CSS per trobar un botó amb la classe "submit" i fer-hi clic.
Exercicis Pràctics
Exercici 1: Localitzar un Element per ID
- Objectiu: Escriu un script que localitzi un camp de text pel seu
id
i introdueixi un text. - Pista: Utilitza
driver.findElement(By.id("id_del_camp"))
.
Exercici 2: Utilitzar XPath per Localitzar un Botó
- Objectiu: Escriu un script que localitzi un botó d'enviament utilitzant XPath i faci clic sobre ell.
- Pista: Prova amb
driver.findElement(By.xpath("//button[@type='submit']"))
.
Solucions
Solució Exercici 1
WebElement textField = driver.findElement(By.id("textFieldId")); textField.sendKeys("Text d'exemple");
Solució Exercici 2
WebElement submitButton = driver.findElement(By.xpath("//button[@type='submit']")); submitButton.click();
Errors Comuns i Consells
-
Error Comú: No trobar un element perquè l'atribut
id
oname
ha canviat.- Consell: Assegura't que els atributs no canviïn dinàmicament o utilitza localitzadors més robustos com XPath o CSS Selectors.
-
Error Comú: Utilitzar un XPath o CSS Selector incorrecte.
- Consell: Verifica les expressions XPath o CSS Selectors amb eines de desenvolupament del navegador.
Conclusió
Els localitzadors són una part fonamental de l'automatització de proves amb Selenium. Comprendre com utilitzar diferents tipus de localitzadors et permetrà interactuar de manera efectiva amb els elements web i crear scripts de prova robustos. En el següent tema, aprofundirem en l'ús de localitzadors ID i Nom per a una identificació més precisa dels elements.
Automatització de Proves amb Selenium
Mòdul 1: Introducció a l'Automatització de Proves
- Què és l'Automatització de Proves?
- Beneficis de l'Automatització de Proves
- Visió General de Selenium
- Configuració del Teu Entorn
Mòdul 2: Començant amb Selenium
- Introducció a Selenium WebDriver
- Instal·lació de Selenium WebDriver
- Primer Script de Selenium
- Comprensió de la Interfície WebDriver
Mòdul 3: Localització d'Elements Web
- Introducció als Localitzadors
- Ús de Localitzadors ID i Nom
- XPath i Selectors CSS
- Estratègies Avançades de Localització
Mòdul 4: Interacció amb Elements Web
- Realització d'Accions sobre Elements Web
- Gestió de Desplegables i Caixes de Selecció
- Treballant amb Alertes i Pop-ups
- Gestió de Finestres del Navegador i Frames
Mòdul 5: Sincronització en Selenium
Mòdul 6: Marc de Proves i Selenium
- Introducció a TestNG
- Configuració de TestNG amb Selenium
- Creació de Casos de Prova TestNG
- Proves Basades en Dades amb TestNG
Mòdul 7: Conceptes Avançats de Selenium
- Gestió de Trucades AJAX
- Treballant amb Cookies
- Captura de Captures de Pantalla
- Execució de JavaScript amb Selenium
Mòdul 8: Selenium Grid i Proves en Paral·lel
- Introducció a Selenium Grid
- Configuració de Selenium Grid
- Execució de Proves en Paral·lel
- Proves Multinavegador
Mòdul 9: Integració Contínua i Selenium
- Introducció a la Integració Contínua
- Integració de Selenium amb Jenkins
- Automatització de l'Execució de Proves
- Informes i Registre