Testing Flashcards

1
Q

Que es un test de software?

A

Es un bloque de software el cual ejecuta otro bloque de software. El test valida si el resultado retornado es el esperado o si ejecuta la secuencia de eventos esperada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Que es el smoke testing?

A

Es un test de la funcionalidad básica o criticas. Se ejecuta antes de probar todos lo otros tests. La idea es identificar tempranamente que no hay errores graves y se puede iniciar las demás actividades de testing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Que es el acceptance test?

A

El acceptance test determina si el sistema cumple con los requerimiento del negocio y de los usuarios finales.
Hay varias formas de pruebas de aceptación:
-Pruebas de aceptación del usuario
-Pruebas de aceptación comercial
-Pruebas alfa
-Pruebas beta

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Cuales son las fases del testing?

A

Analisis de requerimientos ->Test de aceptación
Diseño de alto nivel -> Test de sistema (system test)
Diseño bajo nivel ->Test de integración
Coding -> Test unitario

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Cuál es el objetivo de los test de sistema?

A

Es un tipo de testing de caja negra que se realiza para evaluar el sistema completo. En general se llevan a cabo por un equipo de testing. Incluye prueba funcionales y no funcionales. El test de sistema incluye:
Funcionalidad
Iteroperabilidad
Performance
Escalabilidad
Stress
Carla y estabilidad
Confiabilidad
Regression
Regulaciones y cumplimiento. *No se ven a fondo en esta materia.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Cuál es el objetivo de los test de integración?

A

Verificar el funcionamiento de todos los módulos integrados. No es funcional, sino a nivel código y módulos.
Algunos de los objetos de prueba en este nivel son: subsistemas, base de datos, interfaces, API’s, microservicios.
En estas pruebas nos debemos enfocar en la comunicación entre módulos o sistemas; por ejemplo: desajuste de la interfaz, datos incorrectos o faltantes, suposiciones incorrectas de términos o unidades de datos que se transmiten entre los sistemas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Qué función cumplen los test unitarios?

A

Se prueban los módulos individuales (se prueban los métodos de una clase por ej.).
Están enfocadas en componentes que pueden ser probados de forma separada y son hechas usualmente por los programadores. Son excelentes candidatas a automatizarse y hechas de forma separada del resto del sistema. Algunos de los objetos de pruebas en este nivel son: código, estructura de datos, clases, módulo de bases de datos.
Las ventajas de hacer unit testing son:
Reducir defectos en las características recientes desarrolladas.
Reduce el costo de las pruebas ya que son detectadas tempranamente.
Mejora el diseño.
Incorporan calidad al desarrollo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Describir el ciclo de vida de los test unitarios

A

Checkout code from repository
Make changes
Execute Unit test
Fix Defects and Re-execute
Code Review
Checkin code to repository
y vuelva a empezar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Qué es el black box testing?

A

Es un método de testing que examina las funcionalidades de una aplicación en función de las especificaciones.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Qué es State transition test (Test de transición)

A

Es un tipo de testing de caja negra, en las que las salidas se activan por cambios de condiciones de entrada. Las pruebas están diseñadas para ejecutar transiciones de estado validas e invalidas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Qué es el regression testing?

A

Es un testing de caja negra que consiste en volver a ejecutar aquellas pruebas que se ven afectadas por los cambios de código. La idea es probar que lo que funcionaba, siga funcionando cada vez que se incorpora código o se hacen cambios.
Hay pruebas de regresión final - las pruebas antes de entregar el producto final y pruebas de regression que se ejecutan a lo largo del desarrollo para verificar que las compilaciones no rompen ninguna otra parte de la aplicación.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Explicar Test coverage vs code coverage

A

El code coverage es una métrica que tiene como objetivo medir el numero de lineas cubiertas por los casos de prueba. La intención es que cuanto mayor sea la cobertura de código, menor sera la posibilidad de tener errores.
El test coverage determina si los casos de prueba cubren los requisitos funcionales.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly