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
 
