En aquesta secció, aprendrem a crear el nostre primer script de Selenium. Aquest és un pas fonamental per començar a automatitzar proves amb Selenium WebDriver. Assegura't de tenir el teu entorn configurat abans de començar.
Objectius d'Aprenentatge
- Comprendre l'estructura bàsica d'un script de Selenium.
- Escriure i executar un script senzill que obri un navegador i interactuï amb una pàgina web.
- Familiaritzar-se amb les classes i mètodes bàsics de Selenium WebDriver.
Estructura Bàsica d'un Script de Selenium
Un script de Selenium típic inclou els següents passos:
- Importar les Llibreries Necessàries: Inclou les classes de Selenium que utilitzaràs.
- Inicialitzar el WebDriver: Crear una instància del WebDriver per al navegador que vulguis utilitzar.
- Navegar a una Pàgina Web: Utilitzar el WebDriver per obrir una URL específica.
- Interaccionar amb Elements Web: Localitzar i interactuar amb elements de la pàgina.
- Tancar el Navegador: Finalitzar la sessió del WebDriver.
Exemple Pràctic
A continuació, es mostra un exemple de codi per a un script senzill que obre Google, cerca "Selenium WebDriver" i tanca el navegador.
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class FirstSeleniumScript {
public static void main(String[] args) {
// Configura el camí del driver de Chrome
System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
// Inicialitza el WebDriver
WebDriver driver = new ChromeDriver();
try {
// Navega a Google
driver.get("https://www.google.com");
// Localitza el camp de cerca
WebElement searchBox = driver.findElement(By.name("q"));
// Escriu "Selenium WebDriver" al camp de cerca
searchBox.sendKeys("Selenium WebDriver");
// Envia la cerca
searchBox.submit();
// Espera uns segons per veure els resultats (opcional)
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
// Tanca el navegador
driver.quit();
}
}
}Explicació del Codi
- Importacions: Importem les classes necessàries de Selenium.
- Configuració del Driver:
System.setPropertyestableix el camí al driver del navegador (en aquest cas, ChromeDriver). - Inicialització del WebDriver:
new ChromeDriver()crea una nova instància del navegador Chrome. - Navegació:
driver.get("https://www.google.com")obre Google. - Interacció: Localitzem el camp de cerca per nom i enviem una consulta.
- Tancament:
driver.quit()tanca el navegador i finalitza la sessió.
Exercici Pràctic
Objectiu: Modifica l'script anterior per buscar "Automatització de Proves" en lloc de "Selenium WebDriver".
Solució
// Canvia la línia de codi que escriu al camp de cerca
searchBox.sendKeys("Automatització de Proves");Errors Comuns i Consells
- Driver no trobat: Assegura't que el camí al driver del navegador és correcte i que el driver és compatible amb la versió del navegador.
- Element no trobat: Verifica que el localitzador utilitzat (per exemple,
By.name("q")) és correcte i que l'element és present a la pàgina.
Conclusió
Has creat i executat el teu primer script de Selenium! Aquest és un pas important cap a l'automatització de proves. En el següent tema, aprofundirem en la comprensió de la interfície WebDriver i les seves capacitats.
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
