Sei sulla pagina 1di 3

Repaso módulo 4

Casos de prueba:
Tiene muchas definiciones, siendo algunas las siguientes:

● Según la IEEE Standard 610 (1990) un caso de prueba es:


“Un caso de prueba es un conjunto de entradas, condiciones de ejecución y
resultados esperados diseñados con un objetivo específico, como ejercitar un
camino particular de un programa o verificar el cumplimiento de un requerimiento
específico.”

● De acuerdo a Ron Patton (2001):


“Los casos de prueba son las entradas específicas que pruebas y los
procedimientos que sigues cuando pruebas el software.”

● Bob Binder (1999) define un caso de prueba como:


“Un caso de prueba especifica las precondiciones de la implementación bajo prueba
y el ambiente para ésta, las entradas o condiciones, y los resultados esperados. Los
resultados esperados especifican lo que la implementación bajo prueba debe
producir a partir de las entradas. Esta especificación incluye los mensajes
generados por la implementación bajo prueba, excepciones, las salidas, y el estado
resultante de la implementación bajo prueba y su ambiente. Los casos de prueba
también especifican las precondiciones y las postcondiciones para otros objetos
que constituyen la implementación bajo prueba y su ambiente.“

Un estructura básica, que necesita ser bien detallada para ser interpretada
correctamente, debe tener las siguientes secciones:
○ Pre-condiciones de ejecución
○ Pasos a seguir
○ Conjunto de valores de entrada
○ Resultados esperados
○ Post-condiciones de ejecución
También pueden ser organizados en casos de pruebas abstractos o específicos:
● Abstracto / caso de pruebas con datos: No define los datos concretos que
utilizará, sino restricciones o consideraciones sobre los mismos
● Para cada caso de prueba abstracto habrá un específico
● En la imagen siguiente se puede ver un ejemplo de ambos:
Testing positivo vs. negativo:
Testing positivo:
El objetivo de esta modalidad es determinar que el software haga lo que se supone
que tiene que hacer. El testing positivo es muy útil para determinar si el sistema
cumple los requerimientos del Cliente. Un posible ejemplo es el siguiente:
Verificar que el usuario puede acceder cuando utiliza un usuario y contraseña
válidos.
Testing negativo:
En el enfoque de testing negativo, el objetivo es determinar el comportamiento del
sistema en situaciones en las que no se pretende que sea utilizado, el testing
negativo es muy útil para encontrar defectos en el software, como por ejemplo:
Situaciones inválidas, entradas inválidas, valores inesperados, configuraciones
erróneas, archivos con formato inválido, etc.
Un ejemplo de un caso de prueba negativo, para el mismo caso anterior:
Verificar que el usuario no puede acceder cuando utiliza un usuario y contraseña
inválidos.

No ocultamiento de errores:
Para que no se produzca ocultamiento de errores se debe combinar valores de
distintas clases inválidas, sino que se toma solamente un valor de una clase inválida
para una variable determinada y para el resto de las variables se toman valores
válidos. Por lo tanto, es necesario, como mínimo, un caso de prueba por cada clase
inválida identificada.

Test de regresión:
Son todos tipos de prueba que intentan descubrir, bugs, carencias de funcionalidad,
divergencias funcionales con respecto al software dado un cambio en este.
El objetivo es asegurarse que no haya fallos dado el cambio. Se realizan cada
nueva versión de un software, o cambios que se hagan sobre este.
De mucha utilidad para realizar estas pruebas es la heurística propuesta por Karen
Johnson:
Herramientas de gestión de casos de prueba:
Típicamente se hace en planillas de cálculo. En éstas se registran los pasos, datos
de entrada y salidas esperadas. Y luego de ejecutar los casos se añaden los
resultados de ejecución, fecha, hora, tester, etc. Sin embargo esto presenta algunas
dificultades, por lo que utilizar una herramienta de gestión de casos de prueba
brinda un montón de beneficios, siendo estos:
● Centralizar la gestión y documentación de requerimientos y casos de prueba
● Registro, reportes, visión global
● División y organización del trabajo
● Gestión de versiones
● Ayuda a conocer el estado de calidad de cada versión en forma controlada
● Ayuda a guiar ordenadamente el proceso de pruebas
● Los casos de prueba son re-utilizables
● Se pueden gestionar distintas plataformas
● Se puede obtener fácilmente reportes y estadísticas
● Ejemplos de herramientas de gestión de pruebas
Algunas herramientas son las siguientes:
● Testlink
● qTest Manager
● KiwiTCMS
● Hiptest
● Leantesting

Potrebbero piacerti anche