En aquest tema, explorarem com gestionar els informes i el registre en el context de l'automatització de proves amb Selenium. Els informes i el registre són components essencials per a qualsevol procés de proves, ja que proporcionen visibilitat sobre l'estat de les proves i ajuden a identificar i diagnosticar problemes.
Conceptes Clau
- 
Importància dels Informes i el Registre:
- Visibilitat: Proporcionen una visió clara de l'estat de les proves.
 - Diagnòstic: Ajuden a identificar i resoldre problemes ràpidament.
 - Històric: Mantenen un registre de les execucions de proves per a futures referències.
 
 - 
Tipus d'Informes:
- Informes de Prova: Resum de l'execució de les proves, incloent resultats, temps d'execució i errors.
 - Informes de Cobertura: Mostren quines parts del codi han estat provades.
 
 - 
Eines de Registre:
- Log4j: Una biblioteca popular per al registre en aplicacions Java.
 - SLF4J: Una interfície de registre simple per a Java.
 
 
Implementació d'Informes amb TestNG
TestNG és una eina de proves que ofereix funcionalitats integrades per generar informes detallats. A continuació, es mostra com configurar i utilitzar informes amb TestNG.
Configuració d'Informes amb TestNG
- 
Afegir Dependències:
- Assegura't que el teu projecte inclogui les dependències necessàries per a TestNG al teu fitxer 
pom.xmlsi estàs utilitzant Maven. 
<dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>7.4.0</version> <scope>test</scope> </dependency> - Assegura't que el teu projecte inclogui les dependències necessàries per a TestNG al teu fitxer 
 - 
Executar Proves amb TestNG:
- Quan executis les proves amb TestNG, es generaran automàticament informes en format HTML que es poden trobar a la carpeta 
test-output. 
 - Quan executis les proves amb TestNG, es generaran automàticament informes en format HTML que es poden trobar a la carpeta 
 
Exemple de Codi
import org.testng.Assert;
import org.testng.annotations.Test;
public class ExampleTest {
    @Test
    public void testExample() {
        // Simulació d'una prova
        int expected = 5;
        int actual = 2 + 3;
        Assert.assertEquals(actual, expected, "El resultat esperat no coincideix amb el resultat actual.");
    }
}Registre amb Log4j
Log4j és una eina de registre que permet capturar i emmagatzemar informació sobre l'execució de l'aplicació.
Configuració de Log4j
- 
Afegir Dependències:
- Inclou Log4j al teu projecte mitjançant Maven.
 
<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> - 
Crear un Fitxer de Configuració
log4j.properties:log4j.rootLogger=DEBUG, console, file log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.File=logs/application.log log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n - 
Utilitzar Log4j en el Codi:
import org.apache.log4j.Logger; public class LoggingExample { private static final Logger logger = Logger.getLogger(LoggingExample.class); public static void main(String[] args) { logger.info("Iniciant l'aplicació"); logger.debug("Això és un missatge de depuració"); logger.error("Això és un missatge d'error"); } } 
Exercici Pràctic
Objectiu: Configurar un projecte de Selenium amb TestNG i Log4j per generar informes i registres.
- Configura un projecte de Maven amb les dependències de Selenium, TestNG i Log4j.
 - Crea un script de prova senzill que utilitzi TestNG per executar una prova bàsica.
 - Implementa el registre amb Log4j per capturar informació durant l'execució de la prova.
 - Executa les proves i revisa els informes generats per TestNG i els registres creats per Log4j.
 
Solució
- Configura el 
pom.xmlamb les dependències necessàries. - Crea el fitxer 
log4j.propertiesper configurar el registre. - Escriu un script de prova utilitzant TestNG i Log4j.
 - Executa les proves i revisa els resultats a la carpeta 
test-outputi els registres al fitxerapplication.log. 
Conclusió
Els informes i el registre són components crítics en l'automatització de proves, ja que proporcionen informació valuosa sobre l'execució de les proves i ajuden a identificar problemes. Amb TestNG i Log4j, pots implementar un sistema robust d'informes i registre per millorar la qualitat i la fiabilitat de les teves proves automatitzades.
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
 
