Introducción
En este proyecto, aprenderás a escribir pruebas unitarias para una clase simple Student utilizando el marco de pruebas JUnit. El proyecto implica configurar el entorno de pruebas, escribir casos de prueba para los métodos get y set de la clase Student y verificar la corrección de la implementación.
🎯 Tareas
En este proyecto, aprenderás:
- Cómo importar la dependencia de JUnit en el proyecto
- Cómo configurar la clase
StudentTeste inicializar un objetoStudentpara realizar pruebas - Cómo escribir casos de prueba para los métodos
getde la claseStudent - Cómo escribir casos de prueba para los métodos
setde la claseStudent
🏆 Logros
Después de completar este proyecto, serás capaz de:
- Configurar un entorno de pruebas utilizando Maven y JUnit
- Escribir pruebas unitarias efectivas para una clase Java
- Verificar la corrección de la implementación utilizando casos de prueba
- Aplicar las mejores prácticas para escribir código mantenible y confiable
Importar dependencia de JUnit
En este paso, aprenderás a importar la dependencia de JUnit en el proyecto.
- Abra el archivo
pom.xmlubicado en el directorio~/project/StudentClass. - Agregue la siguiente dependencia dentro de la sección
<dependencies>:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
Esto agregará la dependencia de JUnit 4 al proyecto, que es necesaria para escribir y ejecutar las pruebas unitarias.
Configurar la clase de prueba de Student
En este paso, aprenderás a configurar la clase StudentTest e inicializar un objeto Student para realizar pruebas.
- Abra el archivo
StudentTest.javaubicado en el directorio~/project/StudentClass/src/test/java/com/labex. - Agregue el siguiente método con la anotación
@Beforea la claseStudentTest:
private Student studentTest;
@Before
public void setUp() {
studentTest = new Student("Tom", "male", 25);
}
Este método setUp() se ejecutará antes de cada método de prueba y creará un nuevo objeto Student con el nombre, sexo y edad dados.
Escribir pruebas para los métodos get y set
En este paso, escribirás pruebas para verificar los métodos get y set de la clase Student.
- Agrega los siguientes métodos de prueba a la clase
StudentTest:
@Test
public void testGetName() {
assertEquals("Tom", studentTest.getName());
}
@Test
public void testGetAge() {
assertEquals(25, studentTest.getAge());
}
@Test
public void testGetSex() {
assertEquals("male", studentTest.getSex());
}
Estas pruebas garantizarán que los métodos getName(), getAge() y getSex() de la clase Student funcionen correctamente.
- Agrega los siguientes métodos de prueba a la clase
StudentTest:
@Test
public void testSetName() {
studentTest.setName("Jimmy");
assertEquals("Jimmy", studentTest.getName());
}
@Test
public void testSetAge() {
studentTest.setAge(26);
assertEquals(25, studentTest.getAge()); // La edad debe permanecer sin cambios
}
@Test
public void testSetSex() {
studentTest.setSex("female");
assertEquals("female", studentTest.getSex());
}
Estas pruebas garantizarán que los métodos setName(), setAge() y setSex() de la clase Student funcionen correctamente.
Ejecutar el caso de prueba
Para ejecutar el caso de prueba, siga estos pasos:
- En su terminal, navegue hasta el directorio del proyecto
StudentClassutilizando el siguiente comando:
cd ~/project/StudentClass/
- Ejecute el siguiente comando para ejecutar el caso de prueba:
mvn test
La salida debe ser similar a la siguiente:
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running com.labex.StudentTest
[INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.099 s - in com.labex.StudentTest
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.237 s
[INFO] Finished at: 2024-05-12T12:23:30Z
[INFO] ------------------------------------------------------------------------
Estas pruebas aseguran que los métodos de la clase Student, como getName, getAge, getSex, setName, setAge y setSex, estén funcionando correctamente validando su comportamiento esperado a través de aserciones.
Resumen
¡Felicitaciones! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.



