what is negative testing
Tener la calidad de producto más óptima es el objetivo principal de las organizaciones de prueba.
Con la ayuda de un proceso de garantía de calidad eficiente, los equipos de prueba intentan encontrar defectos máximos durante sus pruebas , asegurando así que el cliente o el usuario final que consume el producto no ve ninguna anomalía con respecto a su funcionamiento en su propio entorno informático.
Dado que encontrar defectos es uno de los principales objetivos de un probador, él / ella necesita elaborar o diseñar cuidadosamente los escenarios de prueba para asegurarse de que la aplicación o el producto en particular funcionan de la manera que se supone que deben hacerlo.
Si bien es definitivamente importante verificar que el software realice sus funciones básicas según lo previsto, es igual o más importante verificar que el software pueda manejar con elegancia una situación anormal. Es obvio que la mayoría de los defectos surgen al generar tales situaciones con una creatividad razonable y aceptable por parte de los probadores.
La mayoría de nosotros ya conocemos varios tipos de pruebas, como pruebas funcionales, pruebas de cordura, pruebas de humo , pruebas de integración, pruebas de regresión , pruebas alfa y beta , pruebas de accesibilidad, etc. Sin embargo, todos estarán de acuerdo en que, independientemente de la categoría de pruebas que realice, todo el esfuerzo de prueba se puede generalizar básicamente en dos categorías: rutas de prueba positivas y rutas de prueba negativas.
Continuemos con las siguientes secciones, en las que analizamos qué son las pruebas positivas y negativas, en qué se diferencian y describiremos algunos ejemplos para comprender qué tipo de pruebas negativas se pueden realizar mientras se prueba una aplicación.
Lo que vas a aprender:
- ¿Qué son las pruebas positivas y negativas?
- Ejemplos prácticos de pruebas positivas y negativas
- Factores básicos que ayudan en la redacción de pruebas positivas y negativas
- Conclusión
- Lectura recomendada
¿Qué son las pruebas positivas y negativas?
Prueba positiva
Las pruebas positivas, muchas veces denominadas 'pruebas de ruta feliz', son generalmente la primera forma de prueba que un evaluador realizaría en una aplicación. Es el proceso de ejecutar escenarios de prueba que un usuario final ejecutaría para su uso. Por lo tanto, como está implícito, la prueba positiva implica ejecutar un escenario de prueba con solo datos correctos y válidos. Si un escenario de prueba no necesita datos, entonces la prueba positiva requeriría ejecutar la prueba exactamente de la manera en que se supone que debe ejecutarse y, por lo tanto, garantizar que la aplicación cumpla con las especificaciones.
A veces, puede haber más de una forma de realizar una función o tarea en particular con la intención de brindar al usuario final más flexibilidad o para lograr la consistencia general del producto. Esto se denomina prueba de ruta alternativa, que también es un tipo de prueba positiva. En la prueba de ruta alternativa, la prueba se vuelve a realizar para cumplir con sus requisitos, pero utilizando una ruta diferente a la ruta obvia. El escenario de prueba incluso consumiría el mismo tipo de datos para lograr el mismo resultado.
Se puede entender esquemáticamente a partir de un ejemplo muy genérico que se describe a continuación:
A es un punto de partida y B es el punto final. Hay dos formas de ir de A a B. La ruta 1 es la ruta que se toma generalmente y la ruta 2 es una ruta alternativa. Por lo tanto, en tal caso, la prueba de ruta feliz sería atravesar del punto A al B usando la Ruta 1 y la prueba de ruta alternativa incluiría tomar la Ruta 2 para ir de A a B. Observe que el resultado en ambos casos es el mismo.
Prueba negativa
Prueba negativa comúnmente conocida como prueba de ruta de error o prueba de falla generalmente se hace para asegurar la estabilidad de la aplicación.
cómo eliminar un elemento de una matriz de Java
Las pruebas negativas son el proceso de aplicar la mayor creatividad posible y validar la aplicación contra datos no válidos. Esto significa que su propósito previsto es verificar si los errores se muestran al usuario donde se supone que deben hacerlo, o si manejan un valor incorrecto con más elegancia.
Es absolutamente esencial comprender por qué es necesaria la prueba negativa.
La confiabilidad funcional de la aplicación o el software solo se puede cuantificar con escenarios negativos diseñados de manera efectiva. Las pruebas negativas no solo tienen como objetivo resaltar cualquier defecto potencial que podría causar un impacto grave en el consumo del producto en general, sino que también pueden ser fundamentales para determinar las condiciones en las que la aplicación puede fallar. Finalmente, asegura que haya suficiente validación de errores presente en el software.
Ejemplo:
Digamos, por ejemplo, que necesita escribir casos de prueba negativos sobre un bolígrafo. El motivo básico del bolígrafo es poder escribir en papel.
Algunos ejemplos de pruebas negativas podrían ser:
- Cambie el medio en el que se supone que debe escribir, de papel a tela o un ladrillo y vea si todavía debe escribir.
- Pon el bolígrafo en el líquido y verifica si vuelve a escribir.
- Reemplaza el recambio del bolígrafo por uno vacío y comprueba que deje de escribir.
Ejemplos prácticos de pruebas positivas y negativas
Tomemos un ejemplo de un asistente de IU para crear algunas políticas. En el asistente, el usuario debe ingresar valores textuales en un panel y valores numéricos en otro.
Primer panel:
En el primero, se espera que el usuario dé un nombre a la política como se muestra a continuación:
mejor descargador de mp3 para teléfonos Android
También obtengamos algunas reglas básicas para asegurarnos de diseñar buenos escenarios positivos y negativos.
Requisitos:
- El cuadro de texto del nombre es un parámetro obligatorio
- La descripción no es obligatoria.
- El cuadro de nombre solo puede tener caracteres a-z y A-Z. No se permiten números, caracteres especiales.
- El nombre puede tener un máximo de 10 caracteres.
Ahora vamos a diseñar los casos de prueba positivos y negativos para este ejemplo.
Casos de prueba positivos: A continuación se muestran algunos escenarios de prueba positivos para este panel en particular.
- ABCDEFGH (validación de mayúsculas dentro del límite de caracteres)
- validación de minúsculas abcdefgh dentro del límite de caracteres)
- aabbccddmn (validación de límite de caracteres)
- aDBcefz (mayúsculas combinadas con validación de minúsculas dentro del límite de caracteres)
- .. etcétera.
Casos de prueba negativos : A continuación se muestran algunos escenarios de prueba negativos para este panel en particular.
- ABCDEFGHJKIOOOOOKIsns (el nombre supera los 10 caracteres)
- abcd1234 (el nombre tiene valores numéricos)
- Sin nombre proporcionado
- sndddwwww_ (el nombre que contiene caracteres especiales)
- .. etcétera.
Segundo panel:
En el segundo panel, se espera que el usuario ingrese solo valores numéricos como se muestra a continuación:
Establezcamos algunas reglas básicas aquí también:
Requisitos:
- La identificación debe ser un número entre 1 y 250
- La identificación es obligatoria.
Por lo tanto, aquí hay algunos escenarios de prueba positivos y negativos para este panel en particular.
Escenarios de prueba positivos : A continuación se muestran algunos escenarios de prueba positivos para este panel en particular.
- 12 (Ingresando un valor válido entre el rango especificado)
- 1250 (ingresando el valor límite del rango especificado)
Escenarios de prueba negativos : A continuación se muestran algunos escenarios de prueba negativos para este panel en particular.
- Ab (Ingresar texto en lugar de números)
- 0, 252 (Ingresando fuera de los valores límite)
- Entrada nula
- -2 (Ingresando valores fuera de rango)
- +56 (Ingresando un valor válido precedido por un carácter especial)
Factores básicos que ayudan en la redacción de pruebas positivas y negativas
Si observa de cerca los ejemplos anteriores, notará que puede haber múltiples escenarios positivos y negativos. Sin embargo, las pruebas son efectivas cuando optimizas una lista interminable de escenarios positivos y negativos de tal manera que lograr suficientes pruebas .
Además, en ambos casos, verá un patrón común sobre cómo se diseñan los escenarios. En los dos casos anteriores, hay dos parámetros o técnicas básicos que formaron la base para diseñar una cantidad suficiente de casos de prueba positivos y negativos.
Los dos parámetros son:
Análisis de valor límite :
Como su propio nombre lo indica, el límite indica límites a algo. Por lo tanto, esto implica diseñar escenarios de prueba que solo se centren en los valores límite y validen cómo se comporta la aplicación. Por lo tanto, si las entradas se suministran dentro de los valores límite, entonces se considera una prueba positiva y las entradas más allá de los valores límite se consideran parte de la prueba negativa.
Por ejemplo, si una aplicación en particular acepta VLAN ID que van de 0 a 255. Por lo tanto, aquí 0, 255 formarán los valores límite. Cualquier entrada que esté por debajo de 0 o por encima de 255 se considerará inválida y, por lo tanto, constituirá una prueba negativa.
Partición de equivalencia :
En la partición de equivalencia, los datos de prueba se segregan en varias particiones. Estas particiones se denominan clases de datos de equivalencia. Se supone que los distintos datos de entrada (los datos pueden ser una condición) en cada partición se comportan de la misma manera. Por lo tanto, solo se debe probar una condición o situación particular de cada partición, ya que si una funciona, se supone que todas las demás en esa partición funcionan. De manera similar, si una condición en una partición no funciona, ninguna de las otras funcionará.
Por lo tanto, ahora es muy evidente que las clases de datos válidas (en las particiones) formarán parte de las pruebas positivas, mientras que las clases de datos no válidos formarán parte de las pruebas negativas.
En el mismo ejemplo de VLAN anterior, los valores se pueden dividir en, digamos, dos particiones.
Entonces las dos particiones aquí serían:
amplitud primera búsqueda árbol c ++
- Valores de -255 a -1 en una partición
- Valores de 0 a 255 en otra partición
Conclusión
Varias veces, me he enfrentado a la situación en la que la gente cree que la prueba negativa es más o menos una duplicación de la prueba positiva en lugar de creer el hecho de que corrobora la prueba positiva. Mi postura sobre estas cuestiones siempre ha sido coherente como tester. Aquellos que comprenden y se esfuerzan por alcanzar altos estándares y calidad sin duda impondrán las pruebas negativas como una obligación en el proceso de calidad.
Mientras que las pruebas positivas aseguran que el caso de uso empresarial esté validado, las pruebas negativas aseguran que el software entregado no tenga fallas que puedan disuadir su uso por parte del cliente.
Diseñar escenarios de prueba negativos precisos y poderosos requiere creatividad, previsión, habilidad e inteligencia del evaluador. La mayoría de estas habilidades se pueden adquirir con la experiencia, así que aguanta y sigue evaluando todo tu potencial una y otra vez.
Sobre el Autor: Este es un artículo invitado de Sneha Nadig. Trabaja como líder de pruebas con más de 7 años de experiencia en proyectos de pruebas manuales y de automatización.
Háganos saber sus pensamientos y experiencia sobre las pruebas negativas.
PREV Tutorial | SIGUIENTE Tutorial
Lectura recomendada
- Mejores herramientas de prueba de software 2021 (Herramientas de automatización de pruebas de control de calidad)
- Descarga del libro electrónico Testing Primer
- Cómo escribir un informe de estado semanal de pruebas de software
- Diferencia entre pruebas de escritorio, cliente-servidor y pruebas web
- Pruebas de carga con tutoriales de HP LoadRunner
- Guía de pruebas de seguridad de aplicaciones web
- Pruebas de aplicaciones: ¡los conceptos básicos de las pruebas de software!
- Instale su aplicación en el dispositivo y comience a probar desde Eclipse